def test_kwargs(self): test_data = {"test": np.random.randint(0, 256, size=[3, 4, 4])} with tempfile.TemporaryDirectory() as tempdir: filepath = os.path.join(tempdir, "test_data.npy") np.save(filepath, test_data, allow_pickle=True) reader = NumpyReader(mmap_mode="r") result = reader.get_data(reader.read(filepath, mmap_mode=None))[0].item() np.testing.assert_allclose(result["test"].shape, test_data["test"].shape)
def test_channel_dim(self): test_data = np.random.randint(0, 256, size=[3, 4, 5, 2]) with tempfile.TemporaryDirectory() as tempdir: filepath = os.path.join(tempdir, "test_data.npy") np.save(filepath, test_data) reader = NumpyReader(channel_dim=-1) result = reader.get_data(reader.read(filepath)) np.testing.assert_allclose(result[1]["spatial_shape"], test_data.shape[:-1]) self.assertEqual(result[1]["original_channel_dim"], -1)
def test_npy_pickle(self): test_data = {"test": np.random.randint(0, 256, size=[3, 4, 4])} with tempfile.TemporaryDirectory() as tempdir: filepath = os.path.join(tempdir, "test_data.npy") np.save(filepath, test_data, allow_pickle=True) reader = NumpyReader() result = reader.get_data(reader.read(filepath))[0].item() self.assertTupleEqual(result["test"].shape, test_data["test"].shape) np.testing.assert_allclose(result["test"], test_data["test"])
def test_npz1(self): test_data1 = np.random.randint(0, 256, size=[3, 4, 4]) with tempfile.TemporaryDirectory() as tempdir: filepath = os.path.join(tempdir, "test_data.npy") np.save(filepath, test_data1) reader = NumpyReader() result = reader.get_data(reader.read(filepath)) np.testing.assert_allclose(result[1]["spatial_shape"], test_data1.shape) np.testing.assert_allclose(result[0].shape, test_data1.shape) np.testing.assert_allclose(result[0], test_data1)
def test_npz3(self): test_data1 = np.random.randint(0, 256, size=[3, 4, 4]) test_data2 = np.random.randint(0, 256, size=[3, 4, 4]) with tempfile.TemporaryDirectory() as tempdir: filepath = os.path.join(tempdir, "test_data.npz") np.savez(filepath, test1=test_data1, test2=test_data2) reader = NumpyReader(npz_keys=["test1", "test2"]) result = reader.get_data(reader.read(filepath)) np.testing.assert_allclose(result[1]["spatial_shape"], test_data1.shape) np.testing.assert_allclose(result[0].shape, (2, 3, 4, 4)) np.testing.assert_allclose(result[0], np.stack([test_data1, test_data2]))