From 17532e999f134f0cc75b3b0f96b971fd32e69b2e Mon Sep 17 00:00:00 2001 From: Johannes Kirschbauer Date: Tue, 25 Jun 2024 21:31:44 +0200 Subject: [PATCH] API: add clanModules list and details test --- clanModules/borgbackup/README.md | 5 +---- pkgs/clan-cli/clan_cli/__init__.py | 8 -------- pkgs/clan-cli/tests/test_modules.py | 25 +++++++++++++++++++++++++ 3 files changed, 26 insertions(+), 12 deletions(-) create mode 100644 pkgs/clan-cli/tests/test_modules.py diff --git a/clanModules/borgbackup/README.md b/clanModules/borgbackup/README.md index db9a447f1..f05f2a618 100644 --- a/clanModules/borgbackup/README.md +++ b/clanModules/borgbackup/README.md @@ -1,7 +1,4 @@ --- description = "Efficient, deduplicating backup program with optional compression and secure encryption." categories = ["backup"] ---- -Long explanations1 -Long explanations2 -Long explanations3 +--- \ No newline at end of file diff --git a/pkgs/clan-cli/clan_cli/__init__.py b/pkgs/clan-cli/clan_cli/__init__.py index 7b42a8e20..63d766afd 100644 --- a/pkgs/clan-cli/clan_cli/__init__.py +++ b/pkgs/clan-cli/clan_cli/__init__.py @@ -122,14 +122,6 @@ Note: The meta results from clan/meta.json and manual flake arguments. It may no ) show_parser.set_defaults(func=show.show_command) - modules_parser = subparsers.add_parser("modules", help="Show modules") - modules_parser.add_argument( - "module_name", - help="name of the module", - type=str, - ) - modules_parser.set_defaults(func=modules.command) - parser_backups = subparsers.add_parser( "backups", help="manage backups of clan machines", diff --git a/pkgs/clan-cli/tests/test_modules.py b/pkgs/clan-cli/tests/test_modules.py new file mode 100644 index 000000000..e062c7909 --- /dev/null +++ b/pkgs/clan-cli/tests/test_modules.py @@ -0,0 +1,25 @@ +import pytest +from fixtures_flakes import FlakeForTest + +from clan_cli.api.modules import list_modules, show_module_info + + +@pytest.mark.with_core +def test_list_modules(test_flake_with_core: FlakeForTest) -> None: + base_path = test_flake_with_core.path + module_list = list_modules(base_path) + assert isinstance(module_list, list) + assert len(module_list) > 1 + # Random test for those two modules + assert "borgbackup" in module_list + assert "syncthing" in module_list + + +@pytest.mark.with_core +def test_modules_details(test_flake_with_core: FlakeForTest) -> None: + base_path = test_flake_with_core.path + test_module = "borgbackup" + module_info = show_module_info(base_path, test_module) + assert module_info.description is not None and module_info.description != "" + assert module_info.categories and "backup" in module_info.categories + assert module_info.roles == ["server", "client"]