def test_success(self, crypt_id, setup_and_teardown): result = self.prep_and_run({'crypt_id': str(crypt_id)}) assert result assert result.exit_code == 0, ( f"{crypt_id=}\n{result.exception=}\n{result.output=}\n" ) with pytest.raises(PhibesNotFoundError): Locker.get(password=self.password, locker_name=None)
def test_delete_locker_normal(self, setup_and_teardown, crypt_id): update_config_option_default(self.target_cmd, self.test_path) assert Locker.get(password=self.pw, locker_name=self.locker_name) result = CliRunner().invoke( cli=self.target_cmd, args=["--locker", self.locker_name, "--password", self.pw], input="y\n" ) assert result.exit_code == 0, ( f'{result.exception=}\n' f'{result.output=}\n' ) with pytest.raises(PhibesNotFoundError): Locker.get(password=self.pw, locker_name=self.locker_name)
def update_item( password: str, locker_name: str, item_name: str, content: str, **kwargs ): locker = Locker.get(password=password, locker_name=locker_name) item = locker.get_item(item_name) item.content = content locker.update_item(item) return get_item( password=password, locker_name=locker_name, item_name=item_name )
def custom_setup(self, tmp_path): ConfigModel().storage = StoreType.Memory.name super(TestGetLocker, self).custom_setup(tmp_path) try: if Locker.get(password=self.password, locker_name=self.locker_name): Locker.delete(password=self.password, locker_name=self.locker_name) Locker.create(password=self.password, crypt_id=crypto.default_id, locker_name=self.locker_name) except Exception: pass
def test_found(self, crypt_id, config_arg, setup_and_teardown): all_lockers = list(self.lockers.keys()) + [self.locker_name] for lck in all_lockers: result = self.prep_and_run(config_arg, {'name': lck}) assert result assert result.exit_code == 0, ( f"{config_arg=}\n" f"{result.exception=}\n" f"{result.output=}\n" ) inst = Locker.get(password=self.password, locker_name=lck) assert ( inst.data_model.storage.locker_file == self.test_path / inst.locker_id / LOCKER_FILE ) # alert if tests are messing up actual user home dir assert not Path.home().joinpath(self.locker_name).exists() assert not Path.home().joinpath(inst.locker_id).exists()
def delete_item( password: str, locker_name: str, item_name: str, **kwargs ): locker = Locker.get(password=password, locker_name=locker_name) return locker.delete_item(item_name=item_name)
def get_items(password: str, locker_name: str, **kwargs): locker = Locker.get(password=password, locker_name=locker_name) return [item.as_dict() for item in locker.list_items()]
def get_item(password: str, locker_name: str, item_name: str, **kwargs): locker = Locker.get(password=password, locker_name=locker_name) return locker.get_item(item_name=item_name).as_dict()
def get_locker(password: str, locker_name: str, **kwargs): return Locker.get(password=password, locker_name=locker_name).to_dict()