TKK_E32232028/.venv/lib/python3.10/site-packages/h5py/tests/test_h5s.py

28 lines
731 B
Python

import pytest
from h5py import h5s, version
from h5py._selector import Selector
class Helper:
def __init__(self, shape: tuple):
self.shape = shape
def __getitem__(self, item) -> h5s.SpaceID:
if not isinstance(item, tuple):
item = (item,)
space = h5s.create_simple(self.shape)
sel = Selector(space)
sel.make_selection(item)
return space
@pytest.mark.skipif(version.hdf5_version_tuple < (1, 10, 7),
reason='H5Sselect_shape_same not available')
def test_same_shape():
s1 = Helper((5, 6))[:3, :4]
s2 = Helper((5, 6))[2:, 2:]
assert s1.select_shape_same(s2)
s3 = Helper((5, 6))[:4, :3]
assert not s1.select_shape_same(s3)