def test_is_locked(self): """Tests the is_locked function.""" if not unittest.source: raise unittest.SkipTest("missing source") with DataRangeFileObject( unittest.source, unittest.offset or 0, None) as file_object: fsapfs_container = pyfsapfs.container() fsapfs_container.open_file_object(file_object) _ = fsapfs_container.is_locked() fsapfs_container.close() if unittest.password: with DataRangeFileObject( unittest.source, unittest.offset or 0, None) as file_object: fsapfs_container = pyfsapfs.container() fsapfs_container.open_file_object(file_object) _ = fsapfs_container.is_locked() fsapfs_container.close()
def test_open_close(self): """Tests the open and close functions.""" if not unittest.source: return if unittest.offset: raise unittest.SkipTest("source defines offset") fsapfs_container = pyfsapfs.container() # Test open and close. fsapfs_container.open(unittest.source) fsapfs_container.close() # Test open and close a second time to validate clean up on close. fsapfs_container.open(unittest.source) fsapfs_container.close() if os.path.isfile(unittest.source): with open(unittest.source, "rb") as file_object: # Test open_file_object and close. fsapfs_container.open_file_object(file_object) fsapfs_container.close() # Test open_file_object and close a second time to validate clean up on close. fsapfs_container.open_file_object(file_object) fsapfs_container.close() # Test open_file_object and close and dereferencing file_object. fsapfs_container.open_file_object(file_object) del file_object fsapfs_container.close()
def test_open_file_object(self): """Tests the open_file_object function.""" if not unittest.source: raise unittest.SkipTest("missing source") if not os.path.isfile(unittest.source): raise unittest.SkipTest("source not a regular file") fsapfs_container = pyfsapfs.container() with DataRangeFileObject(unittest.source, unittest.offset or 0, None) as file_object: fsapfs_container.open_file_object(file_object) with self.assertRaises(IOError): fsapfs_container.open_file_object(file_object) fsapfs_container.close() # TODO: change IOError into TypeError with self.assertRaises(IOError): fsapfs_container.open_file_object(None) with self.assertRaises(ValueError): fsapfs_container.open_file_object(file_object, mode="w")
def _Open(self, mode='rb'): """Opens the file system defined by path specification. Args: mode (Optional[str])): file access mode. The default is 'rb' read-only binary. Raises: AccessError: if the access to open the file was denied. IOError: if the file system object could not be opened. PathSpecError: if the path specification is incorrect. ValueError: if the path specification is invalid. """ if not self._path_spec.HasParent(): raise errors.PathSpecError( 'Unsupported path specification without parent.') file_object = resolver.Resolver.OpenFileObject( self._path_spec.parent, resolver_context=self._resolver_context) fsapfs_container = pyfsapfs.container() fsapfs_container.open_file_object(file_object) self._file_object = file_object self._fsapfs_container = fsapfs_container
def test_close(self): """Tests the close function.""" if not unittest.source: raise unittest.SkipTest("missing source") fsapfs_container = pyfsapfs.container() with self.assertRaises(IOError): fsapfs_container.close()
def test_get_number_of_volumes(self): """Tests the get_number_of_volumes function and number_of_volumes property.""" if not unittest.source: raise unittest.SkipTest("missing source") fsapfs_container = pyfsapfs.container() with DataRangeFileObject(unittest.source, unittest.offset or 0, None) as file_object: fsapfs_container = pyfsapfs.container() fsapfs_container.open_file_object(file_object) number_of_volumes = fsapfs_container.get_number_of_volumes() self.assertIsNotNone(number_of_volumes) self.assertIsNotNone(fsapfs_container.number_of_volumes) fsapfs_container.close()
def test_get_size(self): """Tests the get_size function and size property.""" if not unittest.source: raise unittest.SkipTest("missing source") fsapfs_container = pyfsapfs.container() with DataRangeFileObject(unittest.source, unittest.offset or 0, None) as file_object: fsapfs_container = pyfsapfs.container() fsapfs_container.open_file_object(file_object) size = fsapfs_container.get_size() self.assertIsNotNone(size) self.assertIsNotNone(fsapfs_container.size) fsapfs_container.close()
def test_is_locked(self): """Tests the is_locked function.""" if not unittest.source: raise unittest.SkipTest("missing source") if unittest.offset: raise unittest.SkipTest("source defines offset") fsapfs_container = pyfsapfs.container() fsapfs_container.open(unittest.source) result = fsapfs_container.is_locked() self.assertTrue(result) fsapfs_container.close()
def test_open(self): """Tests the open function.""" if not unittest.source: raise unittest.SkipTest("missing source") if unittest.offset: raise unittest.SkipTest("source defines offset") fsapfs_container = pyfsapfs.container() fsapfs_container.open(unittest.source) with self.assertRaises(IOError): fsapfs_container.open(unittest.source) fsapfs_container.close() with self.assertRaises(TypeError): fsapfs_container.open(None) with self.assertRaises(ValueError): fsapfs_container.open(unittest.source, mode="w")
def test_signal_abort(self): """Tests the signal_abort function.""" fsapfs_container = pyfsapfs.container() fsapfs_container.signal_abort()