write tests to support new changes

This commit is contained in:
2025-07-28 13:16:45 +03:00
parent b567a3b683
commit e8abeeddc9
16 changed files with 436 additions and 106 deletions

View File

@@ -50,7 +50,7 @@ class TreeMigrate(Handler):
target_tree.tree_create()
# perform migration
TreeMigrate.tree_move(current_tree, target_tree)
TreeMigrate.fix_symlinks(current_tree)
TreeMigrate.fix_symlinks(target_tree)
@staticmethod
def _set_service_tree_migrate_parser(root: SubParserAction) -> argparse.ArgumentParser:

View File

@@ -59,7 +59,7 @@ class Repo(LazyLogging):
"""
return self.root / f"{self.name}.db.tar.gz"
def add(self, path: Path, remove: bool = True) -> None:
def add(self, path: Path, *, remove: bool = True) -> None:
"""
add new package to repository
@@ -97,7 +97,7 @@ class Repo(LazyLogging):
filename(Path): package filename to remove
"""
# remove package and signature (if any) from filesystem
for full_path in self.root.glob(f"**/{filename}*"):
for full_path in self.root.glob(f"**/{filename.name}*"):
full_path.unlink()
# remove package from registry

View File

@@ -52,7 +52,7 @@ def migrate_data(connection: Connection, configuration: Configuration) -> None:
# create archive directory if required
if not paths.archive.is_dir():
with paths.preserve_owner(paths.root / "archive"):
with paths.preserve_owner():
paths.archive.mkdir(mode=0o755, parents=True)
move_packages(paths, pacman)

View File

@@ -41,7 +41,7 @@ class Executor(PackageInfo, Cleaner):
trait for common repository update processes
"""
def _archive_remove(self, description: PackageDescription, package_base: str) -> None:
def _archive_rename(self, description: PackageDescription, package_base: str) -> None:
"""
rename package archive removing special symbols
@@ -259,7 +259,7 @@ class Executor(PackageInfo, Cleaner):
packager = self.packager(packagers, local.base)
for description in local.packages.values():
self._archive_remove(description, local.base)
self._archive_rename(description, local.base)
self._package_update(description.filename, local.base, packager.key)
self.reporter.set_success(local)
result.add_updated(local)

Binary file not shown.