def test_overwriteremoveexistingmetadata(self): with tempdirfile() as filename: metadata = {'a': 1} dal1 = create_raggedarray(filename, atom=(), dtype='float64', metadata=metadata) dal2 = create_raggedarray(filename, atom=(), dtype='float64', overwrite=True) self.assertEqual(0, len(dal2.metadata)) self.assertEqual(False, dal2.metadata.path.exists())
def setUp(self): self.temparpath = Path(tempfile.mkdtemp()) / 'testra.ra' self.tempar = create_raggedarray(self.temparpath, atom=(), dtype='float64') self.input = np.array([[1, 2, 3, 4], [4, 5, 6, 7]], dtype='float64') self.tempar.iterappend(self.input)
def test_createwithmetadata(self): with tempdirfile() as filename: md = {'fs': 20000, 'x': 33.3} dal = create_raggedarray(filename, atom=(), dtype='float64', metadata=md) self.assertDictEqual(dict(dal.metadata), md)
def test_1darray(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(), dtype='float64', overwrite=True) dal.iterappend([[0., 1., 2.], [3., 4.], [5.]]) self.assertEqual(len(dal), 3)
def test_simplecopy1d(self): with tempdirfile() as filename1: dal1 = create_raggedarray(filename1, atom=(), dtype='float64') a = np.array([0, 1, 2, 3], dtype='float64') dal1.append(a) with tempdirfile() as filename2: dal2 = dal1.copy(path=filename2) assert_array_equal(dal1[0], dal2[0]) self.assertEqual(dal1.dtype, dal2.dtype)
def test_2darray(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(2, ), dtype='float64') self.assertEqual(len(dal), 0) self.assertEqual(dal.atom, (2, )) self.assertEqual(dal.dtype, np.float64) a = np.array([[0, 1], [2, 3], [4, 5]], dtype='float64') dal.append(a) self.assertEqual(len(dal), 1) assert_equal(dal[0], a)
def test_setmetadatawhenpresent(self): with tempdirfile() as filename: md = {'fs': 20000, 'x': 33.3} dal = create_raggedarray(filename, atom=(), dtype='float64', metadata=md) md['fs'] = 3000 dal.metadata.update(md) self.assertDictEqual(dict(dal.metadata), md)
def test_setaccessmode(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(), dtype='float64') self.assertEqual(dal.accessmode, 'r+') self.assertEqual(dal._metadata.accessmode, 'r+') self.assertEqual(dal._values.accessmode, 'r+') self.assertEqual(dal._indices.accessmode, 'r+') dal.accessmode = 'r' self.assertEqual(dal.accessmode, 'r') self.assertEqual(dal._metadata.accessmode, 'r') self.assertEqual(dal._values.accessmode, 'r') self.assertEqual(dal._indices.accessmode, 'r') self.assertRaises(ValueError, setattr, dal, 'accessmode', 'w') self.assertRaises(ValueError, setattr, dal, 'accessmode', 'a')
def test_donotremovenondarrfiles(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(2, ), accessmode='r+') dal._datadir._write_txt('test.txt', text='abc') self.assertRaises(OSError, delete_raggedarray, dal)
def test_notwriteable(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(2, ), accessmode='r') self.assertRaises(OSError, delete_raggedarray, dal)
def test_simpledelete(self): with tempdirfile() as filename: dal = create_raggedarray(filename, atom=(2, )) delete_raggedarray(dal) self.assertEqual(len(os.listdir(filename.parent)), 0)