Skip to content

Commit 00d8851

Browse files
committed
Test track_order not inherited by subgroups
1 parent 79f2d24 commit 00d8851

File tree

3 files changed

+30
-8
lines changed

3 files changed

+30
-8
lines changed

test/hl/test_attribute.py

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,14 +129,16 @@ def fill_attrs(self, track_order):
129129

130130
# https://forum.hdfgroup.org/t/bug-h5arename-fails-unexpectedly/4881
131131
def test_track_order(self):
132-
filename = self.getFileName("track_order_attribute")
132+
filename = self.getFileName("test_test_track_order_attribute")
133+
print(f"filename: {filename}")
133134
self.f = h5py.File(filename, 'w')
134135
attrs = self.fill_attrs(track_order=True) # creation order
135136
self.assertEqual(list(attrs),
136137
[str(i) for i in range(100)])
137138

138139
def test_no_track_order(self):
139-
filename = self.getFileName("no_track_order_attribute")
140+
filename = self.getFileName("test_test_no_track_order_attribute")
141+
print(f"filename: {filename}")
140142
self.f = h5py.File(filename, 'w')
141143
attrs = self.fill_attrs(track_order=False) # name alphanumeric
142144
self.assertEqual(list(attrs),
@@ -149,7 +151,8 @@ def fill_attrs2(self, track_order):
149151
return group
150152

151153
def test_track_order_overwrite_delete(self):
152-
filename = self.getFileName("track_order_overwrite_delete")
154+
filename = self.getFileName("test_test_track_order_overwrite_delete")
155+
print(f"filename: {filename}")
153156
self.f = h5py.File(filename, 'w')
154157
# issue h5py#1385
155158
group = self.fill_attrs2(track_order=True) # creation order
@@ -162,6 +165,21 @@ def test_track_order_overwrite_delete(self):
162165
del group.attrs['10']
163166
self.assertNotIn('10', group.attrs)
164167

168+
def test_track_order_not_inherited(self):
169+
"""
170+
Test that if a File has track order enabled and a sub group does not,
171+
that alphanumeric order is used within the sub group
172+
"""
173+
filename = self.getFileName("test_test_track_order_not_inherited")
174+
print(f"filename: {filename}")
175+
self.f = h5py.File(filename, 'w', track_order=True)
176+
group = self.f.create_group('test')
177+
178+
for i in range(12):
179+
group.attrs[str(i)] = i
180+
181+
self.assertEqual(list(group.attrs), sorted([str(i) for i in range(12)]))
182+
165183

166184
if __name__ == '__main__':
167185
loglevel = logging.ERROR

test/hl/test_file.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -359,14 +359,16 @@ def populate(self, f):
359359
f[str(i)] = [i]
360360

361361
def test_track_order(self):
362-
filename = self.getFileName("track_order_file")
362+
filename = self.getFileName("test_track_order_file")
363+
print(f"filename: {filename}")
363364
f = h5py.File(filename, 'w', track_order=True) # creation order
364365
self.populate(f)
365366
self.assertEqual(list(f),
366367
[str(i) for i in range(100)])
367368

368369
def test_no_track_order(self):
369-
filename = self.getFileName("no_track_order_file")
370+
filename = self.getFileName("test_no_track_order_file")
371+
print(f"filename: {filename}")
370372
f = h5py.File(filename, 'w', track_order=False) # name alphanumeric
371373
self.populate(f)
372374
self.assertEqual(list(f),

test/hl/test_group.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ def get_count(grp):
277277
# for some reason this test is failing in Travis
278278
return
279279
filename = self.getFileName("test_link_removal")
280-
print(filename)
280+
print(f"filename: {filename}")
281281

282282
f = h5py.File(filename, 'w')
283283
g1 = f.create_group("g1")
@@ -312,7 +312,8 @@ def populate(self, g):
312312
g[str(i)] = [i]
313313

314314
def test_track_order(self):
315-
filename = self.getFileName("track_order_group")
315+
filename = self.getFileName("test_track_order_group")
316+
print(f"filename: {filename}")
316317
self.f = h5py.File(filename, 'w')
317318
g = self.f.create_group('order', track_order=True) # creation order
318319
self.populate(g)
@@ -322,7 +323,8 @@ def test_track_order(self):
322323
self.assertEqual(list(reversed(g)), list(reversed(ref)))
323324

324325
def test_no_track_order(self):
325-
filename = self.getFileName("no_track_order_group")
326+
filename = self.getFileName("test_no_track_order_group")
327+
print(f"filename: {filename}")
326328
self.f = h5py.File(filename, 'w')
327329
g = self.f.create_group('order', track_order=False) # name alphanumeric
328330
self.populate(g)

0 commit comments

Comments
 (0)