def test_ioerror_directory(self): pool_dir = self.pool_dir path = pjoin(pool_dir, "88", "8843d7f92416211de9ebb963ff4ce28125932878") os.chmod(pool_dir, 0o444) hd = HashedDirectory(self.temp_dir).connect(self.POOL) with self.assertRaises(OSError): hd.create(b"foobar")
def test_delete(self): pool_dir = self.pool_dir path = pjoin(pool_dir, "88", "8843d7f92416211de9ebb963ff4ce28125932878") hd = HashedDirectory(self.temp_dir).connect(self.POOL) value = hd.create(b"foobar") value.write(b"example") value.close() self.assertEqual(open(path, "rb").read(), b"example") hd.delete(b"foobar") self.assertFalse(os.path.isfile(path), msg="File must not exist after delete")
def test_create(self): pool_dir = self.pool_dir path = pjoin(pool_dir, "88", "8843d7f92416211de9ebb963ff4ce28125932878") hd = HashedDirectory(self.temp_dir).connect(self.POOL) value = hd.create(b"foobar") value.write("abcde") value.flush() data = open(path, "rb").read() self.assertEqual(data, b"abcde") value.write("fgh") value.close() data = open(path, "rb").read() self.assertEqual(data, b"abcdefgh")