def test_mul(self): for key, arr in self.arrays.items(): for key2, arr2 in self.arrays.items(): nzarr1 = nzarray1d(arr) nzarr2 = nzarray1d(arr2) sumnp = arr * arr2 sumnz = nzarr1 * nzarr2 summix = nzarr1 * arr2 self.assertTrue((sumnz.full() == sumnp).all(), f"{key} failed") self.assertTrue((summix.full() == sumnp).all(), f"{key} failed") self.assertTrue( ((nzarr1 * 2).full() == arr * 2).all(), f"{key} failed" )
def test_floordiv(self): for key, arr in self.arrays.items(): for key2, arr2 in self.arrays.items(): nzarr1 = nzarray1d(arr) nzarr2 = nzarray1d(arr2) sumnp = div0(arr, arr2).astype(int) sumnz = nzarr1 // nzarr2 summix = nzarr1 // arr2 self.assertTrue((sumnz.full() == sumnp).all(), f"{key} failed") self.assertTrue((summix.full() == sumnp).all(), f"{key} failed") self.assertTrue( ((nzarr1 // 2).full() == arr // 2).all(), f"{key} failed" )
def test_slice(self): for key, arr in self.arrays.items(): nzarr1 = nzarray1d(arr) print(f"key: {key}, corners: {nzarr1.corners}") self.assertEqual(nzarr1[0], arr[0], f"{key} failed") self.assertEqual(nzarr1[-1], arr[-1], f"{key} failed") self.assertEqual(nzarr1[50], arr[50], f"{key} failed") self.assertEqual(nzarr1[25], arr[25], f"{key} failed") self.assertEqual(nzarr1[66], arr[66], f"{key} failed") self.assertTrue((nzarr1[30:50] == arr[30:50]).all(), f"{key} failed") self.assertTrue((nzarr1[30:-50] == arr[30:-50]).all(), f"{key} failed") self.assertTrue((nzarr1[-30:50] == arr[-30:50]).all(), f"{key} failed") self.assertTrue((nzarr1[-30:-50] == arr[-30:-50]).all(), f"{key} failed") self.assertTrue((nzarr1[:] == arr[:]).all(), f"{key} failed") self.assertTrue((nzarr1[50:] == arr[50:]).all(), f"{key} failed") self.assertTrue((nzarr1[:30] == arr[:30]).all(), f"{key} failed") self.assertTrue((nzarr1[arr > 1] == arr[arr > 1]).all(), f"{key} failed")
def test_init(self): for key, arr in self.arrays.items(): nzarr = nzarray1d(arr) self.assertEqual(nzarr.shape, arr.shape, f"{key} failed") self.assertTrue((nzarr.full() == arr).all(), f"{key} failed")
def get_arrs(self, key): arrnz = nzarray1d() arrnz.from_hdf5(self.file[key]) arr = arrnz.full() nzarr = nzarray1d(grp=self.file[key], lazy=True) return arr, nzarr
def prep_nzarray(self, arr, key): nzarr1 = nzarray1d(arr=arr) self.file.create_group(key) nzarr1.to_hdf5(self.file[key]) self.arrays.append(key)