def test_loads(self) : algebra.save('temp.npy', self.Mat) Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a']) self.assertEqual(Loaded.info['b'], self.Mat.info['b']) self.assertAlmostEqual(Loaded.info['c'], self.Mat.info['c'])
def test_loads(self): algebra.save('temp.npy', self.Mat) Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a']) self.assertEqual(Loaded.info['b'], self.Mat.info['b']) self.assertAlmostEqual(Loaded.info['c'], self.Mat.info['c'])
def test_to_from_file(self) : """Test that vects and mats can be written to and from file and have all thier properties preserved.""" # For vectors. algebra.save('temp.npy', self.vect) new_vect = algebra.vect_array(algebra.load('temp.npy')) self.assertTrue(sp.allclose(self.vect, new_vect)) self.assertEqual(self.vect.axes, new_vect.axes) # For matricies. algebra.save('temp.npy', self.mat) new_mat = algebra.mat_array(algebra.load('temp.npy')) self.assertTrue(sp.allclose(self.mat, new_mat)) self.assertEqual(self.mat.axes, new_mat.axes) # Messing with stuf should raise exceptions. new_mat = algebra.load('temp.npy') new_mat.info['cols'] = (0,3) self.assertRaises(ValueError, algebra.mat_array, new_mat) # Clean up os.remove('temp.npy') os.remove('temp.npy.meta')
def test_to_from_file(self): """Test that vects and mats can be written to and from file and have all thier properties preserved.""" # For vectors. algebra.save('temp.npy', self.vect) new_vect = algebra.vect_array(algebra.load('temp.npy')) self.assertTrue(sp.allclose(self.vect, new_vect)) self.assertEqual(self.vect.axes, new_vect.axes) # For matricies. algebra.save('temp.npy', self.mat) new_mat = algebra.mat_array(algebra.load('temp.npy')) self.assertTrue(sp.allclose(self.mat, new_mat)) self.assertEqual(self.mat.axes, new_mat.axes) # Messing with stuf should raise exceptions. new_mat = algebra.load('temp.npy') new_mat.info['cols'] = (0, 3) self.assertRaises(ValueError, algebra.mat_array, new_mat) # Clean up os.remove('temp.npy') os.remove('temp.npy.meta')
def test_memmap_write(self) : marray = algebra.open_memmap('temp.npy', mode="w+", shape=self.Mat.shape, dtype=self.Mat.dtype, ) marray[:] = self.Mat[:] marray.info = self.Mat.info del marray marray = None Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a'])
def test_memmap_write(self): marray = algebra.open_memmap( 'temp.npy', mode="w+", shape=self.Mat.shape, dtype=self.Mat.dtype, ) marray[:] = self.Mat[:] marray.info = self.Mat.info del marray marray = None Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a'])
def test_memmap_write_view(self) : marray = algebra.open_memmap('temp.npy', mode="w+", shape=self.Mat.shape, dtype=self.Mat.dtype, ) # Work with a higher level view, make sure se can deal with it. # This is testing a bug I had earlier where base data's were # overwriting the meta data of higher level objects. inf = marray.info marray = marray.view(algebra.info_memmap) inf2 = marray.info marray[:] = self.Mat[:] marray.info.update(self.Mat.info) del marray marray = None Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a'])
def test_memmap_write_view(self): marray = algebra.open_memmap( 'temp.npy', mode="w+", shape=self.Mat.shape, dtype=self.Mat.dtype, ) # Work with a higher level view, make sure se can deal with it. # This is testing a bug I had earlier where base data's were # overwriting the meta data of higher level objects. inf = marray.info marray = marray.view(algebra.info_memmap) inf2 = marray.info marray[:] = self.Mat[:] marray.info.update(self.Mat.info) del marray marray = None Loaded = algebra.load('temp.npy') self.assertTrue(isinstance(Loaded, sp.ndarray)) self.assertTrue(isinstance(Loaded, algebra.info_array)) self.assertTrue(sp.allclose(Loaded, self.Mat)) self.assertEqual(Loaded.info['a'], self.Mat.info['a'])