60
60
Update using new NULL dataset constructor once h5py 2.7 is out.
61
61
"""
62
62
63
+
63
64
class TestEmpty (TestCase ):
64
65
65
66
def setUp (self ):
66
67
TestCase .setUp (self )
67
68
filename = self .getFileName ("dataset_testempty" )
68
69
print ("filename:" , filename )
69
70
self .f = h5py .File (filename , 'w' )
70
- self .dset = self .f .create_dataset ('x' ,dtype = 'S10' )
71
+ self .dset = self .f .create_dataset ('x' , dtype = 'S10' )
71
72
self .empty_obj = h5py .Empty (np .dtype ("S10" ))
72
73
73
74
def test_ndim (self ):
@@ -100,7 +101,7 @@ def test_slice(self):
100
101
def test_multi_block_slice (self ):
101
102
""" MultiBlockSlice -> ValueError """
102
103
""" TBD """
103
- #with self.assertRaises(ValueError):
104
+ # with self.assertRaises(ValueError):
104
105
# self.dset[h5py.MultiBlockSlice()]
105
106
106
107
def test_index (self ):
@@ -111,7 +112,7 @@ def test_index(self):
111
112
def test_indexlist (self ):
112
113
""" index list -> ValueError """
113
114
with self .assertRaises (ValueError ):
114
- self .dset [[1 ,2 , 5 ]]
115
+ self .dset [[1 , 2 , 5 ]]
115
116
116
117
def test_mask (self ):
117
118
""" mask -> ValueError """
@@ -123,7 +124,7 @@ def test_fieldnames(self):
123
124
""" field name -> ValueError """
124
125
with self .assertRaises (ValueError ):
125
126
self .dset ['field' ]
126
-
127
+
127
128
128
129
class TestScalarFloat (TestCase ):
129
130
@@ -175,7 +176,7 @@ def test_index(self):
175
176
def test_indexlist (self ):
176
177
""" index list -> ValueError """
177
178
with self .assertRaises (ValueError ):
178
- self .dset [[1 ,2 , 5 ]]
179
+ self .dset [[1 , 2 , 5 ]]
179
180
180
181
# FIXME: NumPy permits this
181
182
def test_mask (self ):
@@ -198,9 +199,9 @@ def setUp(self):
198
199
print ("filename:" , filename )
199
200
self .f = h5py .File (filename , 'w' )
200
201
self .data = np .array ((42.5 , - 118 , "Hello" ), dtype = [('a' , 'f' ), ('b' , 'i' ), ('c' , '|S10' )])
201
- #self.dset = self.f.create_dataset('x', data=self.data)
202
+ # self.dset = self.f.create_dataset('x', data=self.data)
202
203
self .dset = self .f .create_dataset ('x' , (), dtype = [('a' , 'f' ), ('b' , 'i' ), ('c' , '|S10' )])
203
- self .dset [...] = (42.5 , - 118 , "Hello" )
204
+ self .dset [...] = (42.5 , - 118 , "Hello" )
204
205
205
206
def test_ndim (self ):
206
207
""" Verify number of dimensions """
@@ -246,7 +247,7 @@ def test_index(self):
246
247
def test_indexlist (self ):
247
248
""" index list -> ValueError """
248
249
with self .assertRaises (ValueError ):
249
- self .dset [[1 ,2 , 5 ]]
250
+ self .dset [[1 , 2 , 5 ]]
250
251
251
252
# FIXME: NumPy permits this
252
253
def test_mask (self ):
@@ -259,13 +260,12 @@ def test_mask(self):
259
260
@ut .skip
260
261
def test_fieldnames (self ):
261
262
""" field name -> bare value """
262
- #TBD: fix when field access is supported in hsds
263
+ # TBD: fix when field access is supported in hsds
263
264
out = self .dset ['a' ]
264
265
self .assertIsInstance (out , np .float32 )
265
266
self .assertEqual (out , self .dset ['a' ])
266
267
267
268
268
-
269
269
class TestScalarArray (TestCase ):
270
270
271
271
def setUp (self ):
@@ -279,7 +279,7 @@ def setUp(self):
279
279
try :
280
280
self .dset [...] = self .data
281
281
except (IOError , OSError ) as oe :
282
- #TBD this is failing on HSDS
282
+ # TBD this is failing on HSDS
283
283
if not self .is_hsds ():
284
284
raise oe
285
285
@@ -454,7 +454,7 @@ def test_index_outofrange(self):
454
454
self .dset [100 ]
455
455
456
456
def test_indexlist_simple (self ):
457
- self .assertNumpyBehavior (self .dset , self .data , np .s_ [[1 ,2 , 5 ]])
457
+ self .assertNumpyBehavior (self .dset , self .data , np .s_ [[1 , 2 , 5 ]])
458
458
459
459
def test_indexlist_single_index_ellipsis (self ):
460
460
self .assertNumpyBehavior (self .dset , self .data , np .s_ [[0 ], ...])
@@ -475,12 +475,12 @@ def test_indexlist_outofrange(self):
475
475
def test_indexlist_nonmonotonic (self ):
476
476
""" we require index list values to be strictly increasing """
477
477
with self .assertRaises (TypeError ):
478
- self .dset [[1 ,3 , 2 ]]
478
+ self .dset [[1 , 3 , 2 ]]
479
479
480
480
def test_indexlist_repeated (self ):
481
481
""" we forbid repeated index values """
482
482
with self .assertRaises (TypeError ):
483
- self .dset [[1 ,1 , 2 ]]
483
+ self .dset [[1 , 1 , 2 ]]
484
484
485
485
def test_mask_true (self ):
486
486
self .assertNumpyBehavior (self .dset , self .data , np .s_ [self .data > - 100 ])
@@ -509,7 +509,7 @@ def setUp(self):
509
509
filename = self .getFileName ("dataset_test2dzerofloat" )
510
510
print ("filename:" , filename )
511
511
self .f = h5py .File (filename , 'w' )
512
- self .data = np .ones ((0 ,3 ), dtype = 'f' )
512
+ self .data = np .ones ((0 , 3 ), dtype = 'f' )
513
513
self .dset = self .f .create_dataset ('x' , data = self .data )
514
514
515
515
def test_ndim (self ):
@@ -521,7 +521,8 @@ def test_shape(self):
521
521
self .assertEqual (self .dset .shape , (0 , 3 ))
522
522
523
523
def test_indexlist (self ):
524
- self .assertNumpyBehavior (self .dset , self .data , np .s_ [:,[0 ,1 ,2 ]])
524
+ self .assertNumpyBehavior (self .dset , self .data , np .s_ [:, [0 , 1 , 2 ]])
525
+
525
526
526
527
class Test2DFloat (TestCase ):
527
528
@@ -530,9 +531,9 @@ def setUp(self):
530
531
filename = self .getFileName ("dataset_test2dfloat" )
531
532
print ("filename:" , filename )
532
533
self .f = h5py .File (filename , 'w' )
533
- self .data = np .ones ((5 ,3 ), dtype = 'f' )
534
+ self .data = np .ones ((5 , 3 ), dtype = 'f' )
534
535
self .dset = self .f .create_dataset ('x' , data = self .data )
535
-
536
+
536
537
def test_ndim (self ):
537
538
""" Verify number of dimensions """
538
539
self .assertEqual (self .dset .ndim , 2 )
@@ -543,14 +544,14 @@ def test_size(self):
543
544
544
545
def test_nbytes (self ):
545
546
""" Verify nbytes """
546
- self .assertEqual (self .dset .nbytes , 15 * self .data .dtype .itemsize )
547
+ self .assertEqual (self .dset .nbytes , 15 * self .data .dtype .itemsize )
547
548
548
549
def test_shape (self ):
549
550
""" Verify shape """
550
551
self .assertEqual (self .dset .shape , (5 , 3 ))
551
552
552
553
def test_indexlist (self ):
553
- self .assertNumpyBehavior (self .dset , self .data , np .s_ [:,[0 ,1 , 2 ]])
554
+ self .assertNumpyBehavior (self .dset , self .data , np .s_ [:, [0 , 1 , 2 ]])
554
555
555
556
@ut .expectedFailure
556
557
def test_index_emptylist (self ):
@@ -559,18 +560,20 @@ def test_index_emptylist(self):
559
560
# with h5py 3.2.1 at least
560
561
self .assertNumpyBehavior (self .dset , self .data , np .s_ [[]])
561
562
563
+
562
564
class Test3DFloat (TestCase ):
563
565
564
566
def setUp (self ):
565
567
TestCase .setUp (self )
566
568
filename = self .getFileName ("dataset_test3dfloat" )
567
569
print ("filename:" , filename )
568
570
self .f = h5py .File (filename , 'w' )
569
- self .data = np .ones ((4 ,6 , 8 ), dtype = 'f' )
571
+ self .data = np .ones ((4 , 6 , 8 ), dtype = 'f' )
570
572
self .dset = self .f .create_dataset ('x' , data = self .data , dtype = 'f' )
571
573
572
574
def test_index_simple (self ):
573
- self .assertNumpyBehavior (self .dset , self .data , np .s_ [1 ,2 :4 ,3 :6 ])
575
+ self .assertNumpyBehavior (self .dset , self .data , np .s_ [1 , 2 :4 , 3 :6 ])
576
+
574
577
575
578
class TestVeryLargeArray (TestCase ):
576
579
@@ -585,6 +588,7 @@ def setUp(self):
585
588
def test_size (self ):
586
589
self .assertEqual (self .dset .size , 2 ** 31 )
587
590
591
+
588
592
if __name__ == '__main__' :
589
593
loglevel = logging .ERROR
590
594
logging .basicConfig (format = '%(asctime)s %(message)s' , level = loglevel )
0 commit comments