Beispiel #1
0
 def test_proxy_getitem(self):
     handle = self.handle
     proxy1 = _Hdf5GroupProxyObject(handle['group1'])
     self.assertIsInstance(proxy1['group2'], _Hdf5GroupProxyObject)
     self.assertTrue(np.all(proxy1['data'] == np.arange(10)))
     self.assertTrue(np.all(proxy1['group2']['data2'] == np.zeros((3, 2))))
     self.assertTrue(
         np.all(
             _Hdf5GroupProxyObject(handle['group1/group2'])['data2'] ==
             np.zeros((3, 2))))
     self.assertEqual(proxy1['group2']['attribute_2'], 32)
     self.assertEqual(proxy1['group2']['attribute_1'],
                      'Hello world')  # as string
     with self.assertRaises(KeyError):
         value = proxy1['key-does-not-exist']
Beispiel #2
0
 def test_proxy_str(self):
     handle = self.handle
     proxy1 = _Hdf5GroupProxyObject(handle['group1'])
     self.assertEqual(str(proxy1),
                      "HDF5 group {data: <Dataset>, group2: <Group>}")
     self.assertEqual(
         str(proxy1['group2']),
         "HDF5 group {attribute_1: Hello world, attribute_2: 32, data2: <Dataset>}"
     )
Beispiel #3
0
    def test_proxy_all_attrs(self):
        handle = self.handle
        proxy1 = _Hdf5GroupProxyObject(handle['group1'])

        self.assertEqual(proxy1.all_attrs(), {})
        self.assertEqual(proxy1['group2'].all_attrs(), {
            'attribute_1': 'Hello world',
            'attribute_2': 32
        })
Beispiel #4
0
 def test_proxy_get(self):
     handle = self.handle
     proxy1 = _Hdf5GroupProxyObject(handle['group1'])
     self.assertIsInstance(proxy1.get('group2', None),
                           _Hdf5GroupProxyObject)
     self.assertTrue(np.all(proxy1.get('data', None) == np.arange(10)))
     self.assertIsNone(proxy1.get('data_does_not_exist', None))
     self.assertTrue(
         np.all(
             proxy1.get('group2', {}).get('data2', None) == np.zeros((3,
                                                                      2))))
     self.assertTrue(
         np.all(
             _Hdf5GroupProxyObject(handle['group1/group2']).get(
                 'data2', 13) == np.zeros((3, 2))))
     self.assertEqual(proxy1['group2'].get('attribute_2', 1000), 32)
     self.assertEqual(proxy1['group2'].get('attribute_1', 'hi there'),
                      'Hello world')  # as string
     self.assertEqual(proxy1['group2'].get('attribute_zzzz', 'hi there'),
                      'hi there')
     self.assertEqual(proxy1.get('key-does-not-exist', 123), 123)
Beispiel #5
0
 def test_proxy_value_equals(self):
     handle = self.handle
     proxy1 = _Hdf5GroupProxyObject(handle['group1'])
     self.assertTrue(
         proxy1.value_equals('data', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]))
     self.assertTrue(proxy1['group2'].value_equals('attribute_2', 32))
     self.assertTrue(proxy1['group2'].value_equals('attribute_1',
                                                   'Hello world'))
     self.assertTrue(proxy1['group2'].value_equals('data2',
                                                   np.zeros((
                                                       3,
                                                       2,
                                                   ))))
Beispiel #6
0
    def test_proxy_keys(self):
        handle = self.handle
        proxy1 = _Hdf5GroupProxyObject(handle['group1'])

        self.assertEqual(set(proxy1.keys()), set(['group2', 'data']))
        self.assertEqual(set(proxy1['group2'].keys()),
                         set(['attribute_1', 'attribute_2', 'data2']))

        self.assertEqual(set(proxy1.keys_children()), set(['group2', 'data']))
        self.assertEqual(set(proxy1['group2'].keys_children()), set(['data2']))

        self.assertEqual(set(proxy1.keys_attrs()), set([]))
        self.assertEqual(set(proxy1['group2'].keys_attrs()),
                         set(['attribute_1', 'attribute_2']))