From 3e509e418becd90b1e2a91b4ca50099b422fd307 Mon Sep 17 00:00:00 2001 From: janosmurai <murai.janos@gmail.com> Date: Tue, 9 Apr 2024 14:07:46 +0200 Subject: [PATCH 1/3] Screenshot of the Dev Env Settings Window with the new help test added. --- docs/wp-content/dev_env_settings_window.png | Bin 52878 -> 58778 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/wp-content/dev_env_settings_window.png b/docs/wp-content/dev_env_settings_window.png index 9d870a5dd39bdd9cbd557f5f25dc629d91b54e39..38ff3f4ab3fde7201a4f7d170d34ff239e30535a 100644 GIT binary patch literal 58778 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 A8UO$Q literal 52878 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 S(DiTx?<uI=DL_1Y_P+pbe+`%b From aff0515c094bf88030bdc6444a31d56f57a932b0 Mon Sep 17 00:00:00 2001 From: janosmurai <murai.janos@gmail.com> Date: Tue, 9 Apr 2024 14:08:08 +0200 Subject: [PATCH 2/3] Dependencies updated to newest versions. --- pyproject.toml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index b8e990f..bb26fdd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,26 +28,26 @@ dem = "dem.__main__:main" [tool.poetry.dependencies] python = "^3.10" -docker = "6.1.3" -readchar = "4.0.5" -requests = "2.31.0" -rich = "13.4.2" -typer = "0.9.0" +docker = "^7.0.0" +readchar = "^4.0.6" +requests = "^2.31.0" +rich = "^13.7.1" +typer = "^0.12.2" [tool.poetry.group.docs] optional = true [tool.poetry.group.docs.dependencies] -mkdocs-material = "^9.1.7" +mkdocs-material = "^9.5.17" mike = "^2.0.0" jinja2 = "^3.1.3" [tool.poetry.group.test] [tool.poetry.group.test.dependencies] -pytest = "^7.3.1" -mock = "^5.0.2" -pytest-cov = "^4.1.0" +pytest = "^8.1.1" +mock = "^5.1.0" +pytest-cov = "^5.0.0" [tool.coverage.report] # Regexes for lines to exclude from consideration From 224faa0bc9cfc23cb684a5361db0e76c8fb15f35 Mon Sep 17 00:00:00 2001 From: janosmurai <murai.janos@gmail.com> Date: Tue, 9 Apr 2024 18:42:55 +0200 Subject: [PATCH 3/3] New dem list command functionality implemented. Documentation and test cases updated. --- dem/cli/command/list_cmd.py | 206 ++++++++--------- dem/cli/main.py | 27 +-- dem/core/dev_env.py | 38 ++++ dem/core/tool_images.py | 8 + docs/commands.md | 19 +- docs/quickstart.md | 2 +- docs/stylesheets/extra.css | 4 - tests/cli/test_list_cmd.py | 427 ++++++++++++++++-------------------- tests/core/test_dev_env.py | 69 ++++++ 9 files changed, 417 insertions(+), 383 deletions(-) diff --git a/dem/cli/command/list_cmd.py b/dem/cli/command/list_cmd.py index 709729c..e7e64df 100644 --- a/dem/cli/command/list_cmd.py +++ b/dem/cli/command/list_cmd.py @@ -3,136 +3,110 @@ from dem.core.platform import Platform from dem.core.dev_env import DevEnv -from dem.core.tool_images import ToolImage +from dem.core.dev_env_catalog import DevEnvCatalog from dem.cli.console import stdout, stderr from rich.table import Table +from typing import List -( - DEV_ENV_ORG_NOT_IN_REGISTRY, - DEV_ENV_ORG_INSTALLED_LOCALLY, - DEV_ENV_ORG_REINSTALL, - DEV_ENV_ORG_READY, -) = range(4) - -( - DEV_ENV_LOCAL_NOT_AVAILABLE, - DEV_ENV_LOCAL_REINSTALL, - DEV_ENV_LOCAL_INSTALLED, -) = range(3) - -dev_env_org_status_messages = { - DEV_ENV_ORG_NOT_IN_REGISTRY: "[red]Error: Required image is not available in the registry![/]", - DEV_ENV_ORG_INSTALLED_LOCALLY: "Installed locally.", - DEV_ENV_ORG_REINSTALL: "Incomplete local install. The missing images are available in the registry. Use `dem pull` to reinstall.", - DEV_ENV_ORG_READY: "Ready to be installed.", -} - -dev_env_local_status_messages = { - DEV_ENV_LOCAL_NOT_AVAILABLE: "[red]Error: Required image is not available![/]", - DEV_ENV_LOCAL_REINSTALL: "Incomplete local install. The missing images are available in the registry. Use `dem pull` to reinstall.", - DEV_ENV_LOCAL_INSTALLED: "Installed.", -} - -def get_catalog_dev_env_status(platform: Platform, dev_env: DevEnv) -> str: - image_statuses = [] - for tool_image in dev_env.tool_images: - image_statuses.append(tool_image.availability) - - if (ToolImage.NOT_AVAILABLE in image_statuses) or (ToolImage.LOCAL_ONLY in image_statuses): - dev_env_status = dev_env_org_status_messages[DEV_ENV_ORG_NOT_IN_REGISTRY] - elif (image_statuses.count(ToolImage.LOCAL_AND_REGISTRY) == len(image_statuses)) and \ - platform.get_dev_env_by_name(dev_env.name): - dev_env_status = dev_env_org_status_messages[DEV_ENV_ORG_INSTALLED_LOCALLY] - else: - if platform.get_dev_env_by_name(dev_env.name): - dev_env_status = dev_env_org_status_messages[DEV_ENV_ORG_REINSTALL] +def add_dev_env_info_to_table(platform: Platform, table: Table, dev_env: DevEnv) -> None: + """ Add Development Environment information to the table. + + Args: + platform -- the Platform + table -- the Table + dev_env -- the Development Environment + """ + if dev_env.is_installed: + dev_env.assign_tool_image_instances(platform.tool_images) + installed_column = "[green]Yes[/]" + tool_image_status = dev_env.get_tool_image_status() + if tool_image_status == DevEnv.Status.UNAVAILABLE_IMAGE: + status_column = "[red]Error: Required image is not available![/]" + elif tool_image_status == DevEnv.Status.REINSTALL_NEEDED: + status_column = "[red]Error: Incomplete local install![/]" else: - dev_env_status = dev_env_org_status_messages[DEV_ENV_ORG_READY] - return dev_env_status - -def get_local_dev_env_status(dev_env: DevEnv, tool_images: ToolImage) -> str: - image_statuses = [] - for tool_image in dev_env.tool_images: - image_statuses.append(tool_image.availability) - - if (ToolImage.NOT_AVAILABLE in image_statuses): - dev_env_status = dev_env_local_status_messages[DEV_ENV_LOCAL_NOT_AVAILABLE] - elif (ToolImage.REGISTRY_ONLY in image_statuses): - dev_env_status = dev_env_local_status_messages[DEV_ENV_LOCAL_REINSTALL] + status_column = "Ok" else: - dev_env_status = dev_env_local_status_messages[DEV_ENV_LOCAL_INSTALLED] - return dev_env_status - -def list_dev_envs(platform: Platform, local: bool, org: bool)-> None: - + installed_column = "No" + status_column = "Ok" + table.add_row(dev_env.name, installed_column, status_column) - table = Table() - table.add_column("Development Environment") - table.add_column("Status") - - if ((local == True) and (org == False)): - if not platform.local_dev_envs: - stdout.print("[yellow]No installed Development Environments.[/]") - return - else: - for dev_env in platform.local_dev_envs: - table.add_row(dev_env.name, get_local_dev_env_status(dev_env, platform.tool_images)) - elif((local == False) and (org == True)): - if not platform.dev_env_catalogs.catalogs: - stdout.print("[yellow]No Development Environment Catalogs are available!") - return - for catalog in platform.dev_env_catalogs.catalogs: - catalog.request_dev_envs() - if not catalog.dev_envs: - stdout.print("[yellow]No Development Environments are available in the catalogs.[/]") - return - else: - for dev_env in catalog.dev_envs: - table.add_row(dev_env.name, get_catalog_dev_env_status(platform, dev_env)) - else: - stderr.print("[red]Error: Invalid options.[/]") +def list_local_dev_envs(platform: Platform) -> None: + """ List the local Development Environments. + + Args: + platform -- the Platform + """ + if not platform.local_dev_envs: + stdout.print("[yellow]No Development Environment descriptors are available.[/]") return + else: + table = Table() + table.add_column("Name") + table.add_column("Installed") + table.add_column("Status") - stdout.print(table) + for dev_env in sorted(platform.local_dev_envs, key=lambda dev_env: dev_env.name.lower()): + add_dev_env_info_to_table(platform, table, dev_env) -def list_tool_images(platform: Platform, local: bool, org: bool) -> None: - """ List tool images + stdout.print(f"\n [italic]Local Development Environments[/]") + stdout.print(table) + +def list_actual_cat_dev_envs(catalog: DevEnvCatalog) -> None: + """ List the Development Environments in the catalog. - Args: - local -- list local tool images - org -- list the tool catalog + Args: + catalog -- the Development Environment Catalog """ - if (local == True) and (org == False): - local_images = platform.container_engine.get_local_tool_images() - + catalog.request_dev_envs() + if not catalog.dev_envs: + stdout.print(f"[yellow]No Development Environments are available in the {catalog.name} catalog.[/]") + else: table = Table() - table.add_column("Repository") - for local_image in local_images: - table.add_row(local_image) + table.add_column("Name") + for dev_env in catalog.dev_envs: + table.add_row(dev_env.name) + stdout.print(f"\n [italic]Development Environments in the {catalog.name} catalog:[/]") stdout.print(table) - elif (local == False) and (org == True): - if not platform.registries.registries: - stdout.print("[yellow]No registries are available!") - return + +def list_all_cat_dev_envs(platform: Platform) -> None: + """ List all Development Environments in the catalogs. + + Args: + platform -- the Platform + """ + if not platform.dev_env_catalogs.catalogs: + stdout.print("[yellow]No Development Environment Catalogs are available!") + return + + for catalog in platform.dev_env_catalogs.catalogs: + list_actual_cat_dev_envs(catalog) - registry_images = platform.registries.list_repos() - if registry_images: - table = Table() - table.add_column("Repository") - for registry_image in registry_images: - table.add_row(registry_image) - stdout.print(table) +def list_selected_cat_dev_envs(platform: Platform, cat: List[str]) -> None: + """ List the Development Environments from the specified catalogs. + + Args: + platform -- the Platform + cat -- the specified catalogs + """ + for cat_name in cat: + for catalog in platform.dev_env_catalogs.catalogs: + if catalog.name == cat_name: + list_actual_cat_dev_envs(catalog) + break else: - stdout.print("[yellow]No images are available in the registries!") + stderr.print(f"[red]Error: Catalog '{cat_name}' not found![/]") -def execute(platform: Platform, local: bool, org: bool, env: bool, tool: bool) -> None: - if ((local == True) or (org == True)) and (env == True) and (tool == False): - list_dev_envs(platform, local, org) - elif ((local == True) or (org == True)) and (env == False) and (tool == True): - list_tool_images(platform, local, org) +def execute(platform: Platform, cat: bool, specified_cats: list[str]) -> None: + """ List Development Environments + + Args: + cat -- if true list all Development Environments in the catalogs + specified_cats -- list the Development Environments from the specified catalogs + """ + if cat and not specified_cats: + list_all_cat_dev_envs(platform) + elif specified_cats: + list_selected_cat_dev_envs(platform, specified_cats) else: - stderr.print(\ -"""Usage: dem list [OPTIONS] -Try 'dem list --help' for help. - -Error: You need to set the scope and what to list!""") \ No newline at end of file + list_local_dev_envs(platform) \ No newline at end of file diff --git a/dem/cli/main.py b/dem/cli/main.py index a093980..ee65929 100644 --- a/dem/cli/main.py +++ b/dem/cli/main.py @@ -76,26 +76,19 @@ def autocomplete_host_name(incomplete: str) -> Generator: yield host_config["name"] # DEM commands -@typer_cli.command("list") # "list" is a Python keyword -def list_(local: Annotated[bool, typer.Option(help="Scope is the local host.")] = False, - all: Annotated[bool, typer.Option(help="Scope is the catalogs.")] = False, - env: Annotated[bool, typer.Option(help="List the environments.")] = False, - tool: Annotated[bool, typer.Option(help="List the tool images.")] = False) -> None: +@typer_cli.command("list", context_settings={"allow_extra_args": True}) # "list" is a Python keyword +def list_(cat: Annotated[bool, typer.Option(help="List the Dev Envs available from the catalogs.", + show_default=False)] = False, + ctx: Annotated[typer.Context, typer.Option()] = None) -> None: """ - List the Development Environments available locally or from the catalogs. + List the locally available Dev Envs. - The following option combinations are suppported: - - --local --env -> List the local Development Environments. - - --all --env -> List the Development Environments available from the catalogs. - - --local --tool -> List the local tool images. - - --all --tool -> List the tool images available from the registries. + --cat: List the available Dev Envs from the catalogs. Specify the catalogs' name to list the Dev + Envs from. More then one catalog can be specified. If no catalog is specified, all the available + catalogs will be used. """ - if platform: - list_cmd.execute(platform, local, all, env, tool) + if platform and ctx: + list_cmd.execute(platform, cat, ctx.args) else: raise InternalError("Error: The platform hasn't been initialized properly!") diff --git a/dem/core/dev_env.py b/dem/core/dev_env.py index dbae168..6fbc6e9 100755 --- a/dem/core/dev_env.py +++ b/dem/core/dev_env.py @@ -2,11 +2,18 @@ # dem/core/dev_env.py from dem.core.tool_images import ToolImage, ToolImages +from enum import Enum import json, os class DevEnv(): """ A Development Environment. """ + class Status(Enum): + """ The status of an installed Development Environment. """ + OK = 0 + REINSTALL_NEEDED = 1 + UNAVAILABLE_IMAGE = 2 + def __init__(self, descriptor: dict | None = None, descriptor_path: str | None = None) -> None: """ Init the DevEnv class. @@ -45,11 +52,42 @@ def __init__(self, descriptor: dict | None = None, descriptor_path: str | None = self.is_installed = False def assign_tool_image_instances(self, tool_images: ToolImages) -> None: + """ Assign the Tool Images to the Development Environment. + + After creating a DevEnv instance, the Tool Images are not yet assigned to it. This + method must be called if the Tool Images are needed. + + Args: + tool_images -- the Tool Images to assign + + Exceptions: + ToolImageError -- if the Tool Image name is invalid + """ for tool_descriptor in self.tool_image_descriptors: tool_image_name = tool_descriptor["image_name"] + ':' + tool_descriptor["image_version"] tool_image = tool_images.all_tool_images.get(tool_image_name, ToolImage(tool_image_name)) self.tool_images.append(tool_image) + def get_tool_image_status(self) -> Status: + """ Get the status of the Tool Images. + + Can only be used if the Dev Env is insalled. + + This method checks the availability of the assigned Tool Images. + If at least one of the Tool Images is unkonwn: NOT_AVAILABLE. + If at least one of the Tool Images is only available in the registry: REINSTALL_NEEDED. + If all the Tool Images are available: OK. + + Returns: + Status -- the status of the Dev Env + """ + for tool_image in self.tool_images: + if tool_image.availability == ToolImage.NOT_AVAILABLE: + return self.Status.UNAVAILABLE_IMAGE + elif tool_image.availability == ToolImage.REGISTRY_ONLY: + return self.Status.REINSTALL_NEEDED + return self.Status.OK + def get_deserialized(self, omit_is_installed: bool = False) -> dict[str, str]: """ Create the deserialized json. diff --git a/dem/core/tool_images.py b/dem/core/tool_images.py index 565358d..d46e7ad 100644 --- a/dem/core/tool_images.py +++ b/dem/core/tool_images.py @@ -14,6 +14,14 @@ class ToolImage(): ) = range(4) def __init__(self, name: str) -> None: + """ Init the class. + + Args: + name -- the name of the tool image + + Exceptions: + ToolImageError -- if the name is invalid + """ self.name = name try: self.repository = self.name.split(":")[0] diff --git a/docs/commands.md b/docs/commands.md index be1aec6..2a3e768 100644 --- a/docs/commands.md +++ b/docs/commands.md @@ -1,22 +1,17 @@ ## **`dem list [OPTIONS]`** -List the Development Environments installed locally or available in the catalog. +List the locally available Dev Envs. Options: -- Level 1: - - `--local` Scope is the local host. - - `--all` Scope is the catalog. -- Level 2: - - `--env` List the Development Environments. - - `--tool` List the tool images. +`--cat`: List the available Dev Envs from the catalogs. Specify the catalogs' name to list the Dev +Envs from. More then one catalog can be specified. If no catalog is specified, all the available +catalogs will be used. -!!! abstract "The following option combinations are supported:" +Examples: - `--local --env` -> List the local Development Environments. - `--all --env` -> List the catalog Development Environments. - `--local --tool` -> List the local tool images. - `--all --tool` -> List the tool images available in the registries. +- `dem list --cat` List all the Dev Envs from all the available catalogs. +- `dem list --cat catalog1 catalog2` List all the Dev Envs from the catalog1 and catalog2. --- diff --git a/docs/quickstart.md b/docs/quickstart.md index 635095b..ae34e3f 100644 --- a/docs/quickstart.md +++ b/docs/quickstart.md @@ -9,7 +9,7 @@ Now that you have the DEM installed, you might find yourself in one of the follo Here at axem we'd like to create a template for every target out there. List the currently available ones with: - dem list --all --env + dem list --cat You can clone the selected template with: diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css index bb38152..4b5c0bf 100644 --- a/docs/stylesheets/extra.css +++ b/docs/stylesheets/extra.css @@ -29,10 +29,6 @@ div { font-size: 20px; } -span { - font-size: 24px; -} - @font-face { font-family: 'DarkerGrotesque-Medium'; src: url(../Darker_Grotesque/DarkerGrotesque-Medium.ttf) format('truetype'); diff --git a/tests/cli/test_list_cmd.py b/tests/cli/test_list_cmd.py index 9796cb1..75ad4ac 100644 --- a/tests/cli/test_list_cmd.py +++ b/tests/cli/test_list_cmd.py @@ -9,294 +9,255 @@ from typer.testing import CliRunner from unittest.mock import patch, MagicMock, call -import io -from rich.console import Console -from rich.table import Table - ## Global test variables # In order to test stdout and stderr separately, the stderr can't be mixed into # the stdout. runner = CliRunner(mix_stderr=False) -## Test cases +def test_add_dev_env_info_to_table_installed() -> None: + # Setup + mock_platform = MagicMock() + mock_tool_image = MagicMock() + mock_platform.tool_images = mock_tool_image + mock_table = MagicMock() + mock_dev_env = MagicMock() + mock_dev_env.is_installed = True + mock_dev_env.name = "test_dev_env" + mock_dev_env.get_tool_image_status.return_value = list_cmd.DevEnv.Status.OK -## Test listing the local dev envs. + # Run the test + list_cmd.add_dev_env_info_to_table(mock_platform, mock_table, mock_dev_env) -@patch("dem.cli.command.list_cmd.stdout.print") -@patch("dem.cli.command.list_cmd.get_local_dev_env_status") -@patch("dem.cli.command.list_cmd.Table") -def test_with_valid_dev_env_json(mock_Table: MagicMock, mock_get_local_dev_env_status: MagicMock, - mock_stdout_print: MagicMock) -> None: - # Test setup + # Check the result + mock_dev_env.assign_tool_image_instances.assert_called_once_with(mock_platform.tool_images) + mock_dev_env.get_tool_image_status.assert_called_once() + mock_table.add_row.assert_called_once_with("test_dev_env", "[green]Yes[/]", "Ok") + +def test_add_dev_env_info_to_table_installed_unavailable_image() -> None: + # Setup mock_platform = MagicMock() - expected_dev_env_list = [ - ["demo", "Installed."], - ["nagy_cica_project", "[red]Error: Required image is not available![/]"] - ] - fake_dev_envs = [] - for expected_dev_env in expected_dev_env_list: - fake_dev_env = MagicMock() - fake_dev_env.name = expected_dev_env[0] - fake_dev_envs.append(fake_dev_env) - mock_platform.local_dev_envs = fake_dev_envs - main.platform = mock_platform + mock_tool_image = MagicMock() + mock_platform.tool_images = mock_tool_image + mock_table = MagicMock() + mock_dev_env = MagicMock() + mock_dev_env.is_installed = True + mock_dev_env.name = "test_dev_env" + mock_dev_env.get_tool_image_status.return_value = list_cmd.DevEnv.Status.UNAVAILABLE_IMAGE + # Run the test + list_cmd.add_dev_env_info_to_table(mock_platform, mock_table, mock_dev_env) + + # Check the result + mock_dev_env.assign_tool_image_instances.assert_called_once_with(mock_platform.tool_images) + mock_dev_env.get_tool_image_status.assert_called_once() + mock_table.add_row.assert_called_once_with("test_dev_env", "[green]Yes[/]", "[red]Error: Required image is not available![/]") + +def test_add_dev_env_info_to_table_installed_reinstall_needed() -> None: + # Setup + mock_platform = MagicMock() + mock_tool_image = MagicMock() + mock_platform.tool_images = mock_tool_image mock_table = MagicMock() - mock_Table.return_value = mock_table + mock_dev_env = MagicMock() + mock_dev_env.is_installed = True + mock_dev_env.name = "test_dev_env" + mock_dev_env.get_tool_image_status.return_value = list_cmd.DevEnv.Status.REINSTALL_NEEDED - mock_get_local_dev_env_status.side_effect = [ - expected_dev_env_list[0][1], - expected_dev_env_list[1][1] - ] + # Run the test + list_cmd.add_dev_env_info_to_table(mock_platform, mock_table, mock_dev_env) - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--local", "--env"]) + # Check the result + mock_dev_env.assign_tool_image_instances.assert_called_once_with(mock_platform.tool_images) + mock_dev_env.get_tool_image_status.assert_called_once() + mock_table.add_row.assert_called_once_with("test_dev_env", "[green]Yes[/]", "[red]Error: Incomplete local install![/]") + +def test_add_dev_env_info_to_table_not_installed() -> None: + # Setup + mock_platform = MagicMock() + mock_tool_image = MagicMock() + mock_platform.tool_images = mock_tool_image + mock_table = MagicMock() + mock_dev_env = MagicMock() + mock_dev_env.is_installed = False + mock_dev_env.name = "test_dev_env" - # Check expectations - assert 0 == runner_result.exit_code + # Run the test + list_cmd.add_dev_env_info_to_table(mock_platform, mock_table, mock_dev_env) - mock_Table.assert_called_once() - mock_table.add_column.assert_has_calls([call("Development Environment"), call("Status")]) - mock_table.add_row.assert_has_calls([call(*(expected_dev_env_list[0])), - call(*(expected_dev_env_list[1]))]) - mock_stdout_print.assert_called_once_with(mock_table) + # Check the result + mock_dev_env.assign_tool_image_instances.assert_not_called() + mock_dev_env.get_tool_image_status.assert_not_called() + mock_table.add_row.assert_called_once_with("test_dev_env", "No", "Ok") -def test_with_empty_dev_env_json(): - # Test setup +@patch("dem.cli.command.list_cmd.stdout.print") +def test_list_local_dev_envs_no_dev_envs(mock_stdout_print: MagicMock) -> None: + # Setup mock_platform = MagicMock() mock_platform.local_dev_envs = [] - main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--local", "--env"]) + # Run the test + list_cmd.list_local_dev_envs(mock_platform) + + # Check the result + mock_stdout_print.assert_called_once_with("[yellow]No Development Environment descriptors are available.[/]") + +@patch("dem.cli.command.list_cmd.stdout.print") +@patch("dem.cli.command.list_cmd.Table") +@patch("dem.cli.command.list_cmd.add_dev_env_info_to_table") +def test_list_local_dev_envs(mock_add_dev_env_info_to_table: MagicMock, mock_Table: MagicMock, + mock_stdout_print: MagicMock) -> None: + # Setup + mock_platform = MagicMock() + mock_table = MagicMock() + mock_Table.return_value = mock_table + mock_dev_env = MagicMock() + mock_dev_env.name = "test_dev_env" + mock_platform.local_dev_envs = [mock_dev_env] + + # Run the test + list_cmd.list_local_dev_envs(mock_platform) + + # Check the result + mock_table.add_column.assert_has_calls([call("Name"), call("Installed"), call("Status")]) + mock_add_dev_env_info_to_table.assert_called_once_with(mock_platform, mock_table, mock_dev_env) + mock_stdout_print.assert_has_calls([call(f"\n [italic]Local Development Environments[/]"), + call(mock_table)]) + +@patch("dem.cli.command.list_cmd.stdout.print") +def test_list_actual_cat_dev_envs_no_dev_envs(mock_stdout_print: MagicMock) -> None: + # Setup + mock_catalog = MagicMock() + mock_catalog.name = "test_catalog" + mock_catalog.dev_envs = [] + + # Run the test + list_cmd.list_actual_cat_dev_envs(mock_catalog) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + mock_catalog.request_dev_envs.assert_called_once() + mock_stdout_print.assert_called_once_with("[yellow]No Development Environments are available in the test_catalog catalog.[/]") - console = Console(file=io.StringIO()) - console.print("[yellow]No installed Development Environments.[/]") - expected_output = console.file.getvalue() - assert expected_output == runner_result.stdout +@patch("dem.cli.command.list_cmd.stdout.print") +@patch("dem.cli.command.list_cmd.Table") +def test_list_actual_cat_dev_envs(mock_Table: MagicMock, mock_stdout_print: MagicMock) -> None: + # Setup + mock_catalog = MagicMock() + mock_catalog.name = "test_catalog" + mock_dev_env = MagicMock() + mock_dev_env.name = "test_dev_env" + mock_catalog.dev_envs = [mock_dev_env] + mock_table = MagicMock() + mock_Table.return_value = mock_table -## Test listing the org dev envs. + # Run the test + list_cmd.list_actual_cat_dev_envs(mock_catalog) + # Check the result + mock_catalog.request_dev_envs.assert_called_once() + mock_table.add_column.assert_called_once_with("Name") + mock_table.add_row.assert_called_once_with("test_dev_env") + mock_stdout_print.assert_has_calls([call(f"\n [italic]Development Environments in the test_catalog catalog:[/]"), + call(mock_table)]) + @patch("dem.cli.command.list_cmd.stdout.print") -def test_without_avialable_catalogs(mock_stdout_print: MagicMock): - # Test setup +def test_list_all_cat_dev_envs_no_catalogs(mock_stdout_print: MagicMock) -> None: + # Setup mock_platform = MagicMock() mock_platform.dev_env_catalogs.catalogs = [] - main.platform = mock_platform - - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--env"]) - # Check expectations - assert 0 == runner_result.exit_code + # Run the test + list_cmd.list_all_cat_dev_envs(mock_platform) + # Check the result mock_stdout_print.assert_called_once_with("[yellow]No Development Environment Catalogs are available!") -def test_with_empty_catalog(): - # Test setup - mock_catalog = MagicMock() - mock_catalog.dev_envs = [] +@patch("dem.cli.command.list_cmd.list_actual_cat_dev_envs") +def test_list_all_cat_dev_envs(mock_list_actual_cat_dev_envs: MagicMock) -> None: + # Setup mock_platform = MagicMock() + mock_catalog = MagicMock() mock_platform.dev_env_catalogs.catalogs = [mock_catalog] - main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--env"]) + # Run the test + list_cmd.list_all_cat_dev_envs(mock_platform) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + mock_list_actual_cat_dev_envs.assert_called_once_with(mock_catalog) - console = Console(file=io.StringIO()) - console.print("[yellow]No Development Environments are available in the catalogs.[/]") - assert console.file.getvalue() == runner_result.stdout - -@patch("dem.cli.command.list_cmd.get_catalog_dev_env_status") -def test_with_valid_dev_env_org_json(mock_get_catalog_dev_env_status: MagicMock) -> None: - # Test setup +@patch("dem.cli.command.list_cmd.list_actual_cat_dev_envs") +def test_list_selected_cat_dev_envs(mock_list_actual_cat_dev_envs: MagicMock) -> None: + # Setup mock_platform = MagicMock() - main.platform = mock_platform - - expected_dev_env_list = [ - ["org_only_env", "Ready to be installed."], - ["demo", "Installed locally."], - ["nagy_cica_project", "Incomplete local install. The missing images are available in the registry. Use `dem pull` to reinstall."], - ["unavailable_image_env", "[red]Error: Required image is not available in the registry![/]"] - ] - fake_catalog_dev_envs = [] - for expected_dev_env in expected_dev_env_list: - fake_dev_env = MagicMock() - fake_dev_env.name = expected_dev_env[0] - fake_catalog_dev_envs.append(fake_dev_env) mock_catalog = MagicMock() + test_catalog_name = "test_catalog" + mock_catalog.name = test_catalog_name mock_platform.dev_env_catalogs.catalogs = [mock_catalog] - mock_catalog.dev_envs = fake_catalog_dev_envs - mock_platform.get_dev_env_by_name.side_effect = [None, MagicMock(), MagicMock()] - - mock_get_catalog_dev_env_status.side_effect = [ - expected_dev_env_list[0][1], - expected_dev_env_list[1][1], - expected_dev_env_list[2][1], - expected_dev_env_list[3][1] - ] - - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--env"]) - - # Check expectations - calls = [] - for fake_dev_env in fake_catalog_dev_envs: - calls.append(call(fake_dev_env)) - mock_platform.get_dev_env_by_name.has_calls(calls) - - expected_table = Table() - expected_table.add_column("Development Environment") - expected_table.add_column("Status") - for expected_dev_env in expected_dev_env_list: - expected_table.add_row(*expected_dev_env) - console = Console(file=io.StringIO()) - console.print(expected_table) - assert console.file.getvalue() == runner_result.stdout - -def test_without_options(): - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list"], color=True) - - # Check expectations - assert 0 == runner_result.exit_code - - console = Console(file=io.StringIO()) - console.print(\ -"""Usage: dem list [OPTIONS] -Try 'dem list --help' for help. - -Error: You need to set the scope and what to list!""") - expected_output = console.file.getvalue() - assert expected_output == runner_result.stderr - -def test_with_invalid_option(): - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--local", "--all", "--env"], color=True) - - # Check expectations - assert 0 == runner_result.exit_code - - console = Console(file=io.StringIO()) - console.print("[red]Error: Invalid options.[/]") - assert console.file.getvalue() == runner_result.stderr - -## Test listing the local tool images. - -def test_local_tool_images(): - # Test setup - test_local_tool_images = [ - "axemsolutions/cpputest:latest", - "axemsolutions/stlink_org:latest", - "axemsolutions/make_gnu_arm:latest", - ] - mock_platform = MagicMock() - mock_platform.container_engine.get_local_tool_images.return_value = test_local_tool_images - main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--local", "--tool"]) + # Run the test + list_cmd.list_selected_cat_dev_envs(mock_platform, [test_catalog_name]) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + mock_list_actual_cat_dev_envs.assert_called_once_with(mock_catalog) - mock_platform.container_engine.get_local_tool_images.assert_called_once() +@patch("dem.cli.command.list_cmd.stderr.print") +def test_list_selected_cat_dev_envs_catalog_not_found(mock_stderr_print: MagicMock) -> None: + # Setup + mock_platform = MagicMock() + mock_catalog = MagicMock() + test_catalog_name = "test_catalog" + mock_catalog.name = test_catalog_name + mock_platform.dev_env_catalogs.catalogs = [mock_catalog] - expected_table = Table() - expected_table.add_column("Repository") - expected_table.add_row("axemsolutions/cpputest:latest") - expected_table.add_row("axemsolutions/stlink_org:latest") - expected_table.add_row("axemsolutions/make_gnu_arm:latest") - console = Console(file=io.StringIO()) - console.print(expected_table) - assert console.file.getvalue() == runner_result.stdout + # Run the test + list_cmd.list_selected_cat_dev_envs(mock_platform, ["wrong_catalog"]) -def test_no_local_tool_images(): - # Test setup - test_local_tool_images = [] - mock_platform = MagicMock() - mock_platform.container_engine.get_local_tool_images.return_value = test_local_tool_images - main.platform = mock_platform + # Check the result + mock_stderr_print.assert_called_once_with("[red]Error: Catalog 'wrong_catalog' not found![/]") - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--local", "--tool"]) - - # Check expectations - assert 0 == runner_result.exit_code - - mock_platform.container_engine.get_local_tool_images.assert_called_once() - - expected_table = Table() - expected_table.add_column("Repository") - console = Console(file=io.StringIO()) - console.print(expected_table) - assert console.file.getvalue() == runner_result.stdout - -## Test listing the local tool images. - -def test_registry_tool_images(): - # Test setup - test_registry_tool_images = [ - "axemsolutions/cpputest:latest", - "axemsolutions/stlink_org:latest", - "axemsolutions/make_gnu_arm:latest", - ] +@patch("dem.cli.command.list_cmd.list_all_cat_dev_envs") +def test_execute_list_all_cat_dev_envs(mock_list_all_cat_dev_envs: MagicMock) -> None: + # Setup mock_platform = MagicMock() - mock_platform.registries.list_repos.return_value = test_registry_tool_images - main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--tool"]) + # Run the test + list_cmd.execute(mock_platform, True, []) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + mock_list_all_cat_dev_envs.assert_called_once_with(mock_platform) - mock_platform.registries.list_repos.assert_called_once() - - expected_table = Table() - expected_table.add_column("Repository") - expected_table.add_row("axemsolutions/cpputest:latest") - expected_table.add_row("axemsolutions/stlink_org:latest") - expected_table.add_row("axemsolutions/make_gnu_arm:latest") - console = Console(file=io.StringIO()) - console.print(expected_table) - assert console.file.getvalue() == runner_result.stdout - -@patch("dem.cli.command.list_cmd.stdout.print") -def test_empty_repository(mock_stdout_print: MagicMock): - # Test setup - test_registry_tool_images = [] +@patch("dem.cli.command.list_cmd.list_selected_cat_dev_envs") +def test_execute_list_selected_cat_dev_envs(mock_list_selected_cat_dev_envs: MagicMock) -> None: + # Setup mock_platform = MagicMock() - mock_platform.registries.list_repos.return_value = test_registry_tool_images - main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--tool"]) + # Run the test + list_cmd.execute(mock_platform, True, ["test_catalog"]) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + mock_list_selected_cat_dev_envs.assert_called_once_with(mock_platform, ["test_catalog"]) - mock_platform.registries.list_repos.assert_called_once() - mock_stdout_print.assert_called_once_with("[yellow]No images are available in the registries!") +@patch("dem.cli.command.list_cmd.list_local_dev_envs") +def test_execute_list_local_dev_envs(mock_list_local_dev_envs: MagicMock) -> None: + # Setup + mock_platform = MagicMock() -@patch("dem.cli.command.list_cmd.stdout.print") -def test_no_registries_available(mock_stdout_print: MagicMock): - # Test setup + # Run the test + list_cmd.execute(mock_platform, False, []) + + # Check the result + mock_list_local_dev_envs.assert_called_once_with(mock_platform) + +@patch("dem.cli.command.list_cmd.execute") +def test_main_list(mock_execute: MagicMock) -> None: + # Setup mock_platform = MagicMock() - mock_platform.registries.registries = [] main.platform = mock_platform - # Run unit under test - runner_result = runner.invoke(main.typer_cli, ["list", "--all", "--tool"]) + # Run the test + result = runner.invoke(main.typer_cli, ["list", "--cat", "test_catalog"]) - # Check expectations - assert 0 == runner_result.exit_code + # Check the result + assert result.exit_code == 0 - mock_stdout_print.assert_called_once_with("[yellow]No registries are available!") \ No newline at end of file + mock_execute.assert_called_once_with(mock_platform, True, ["test_catalog"]) \ No newline at end of file diff --git a/tests/core/test_dev_env.py b/tests/core/test_dev_env.py index 61efb08..96cf920 100644 --- a/tests/core/test_dev_env.py +++ b/tests/core/test_dev_env.py @@ -131,6 +131,75 @@ def test_DevEnv_assign_tool_image_instances() -> None: for tool_image in test_dev_env.tool_images: assert tool_image is mock_tool_images.all_tool_images[tool_image.name] +@patch.object(dev_env.DevEnv, "__init__") +def test_DevEnv_get_tool_image_status(mock___init__: MagicMock) -> None: + # Test setup + mock___init__.return_value = None + + test_dev_env = dev_env.DevEnv(MagicMock()) + mock_tool_image1 = MagicMock() + mock_tool_image1.availability = dev_env.ToolImage.LOCAL_AND_REGISTRY + mock_tool_image2 = MagicMock() + mock_tool_image2.availability = dev_env.ToolImage.LOCAL_ONLY + test_dev_env.tool_images = [ + mock_tool_image1, + mock_tool_image2 + ] + + # Run unit under test + actual_status = test_dev_env.get_tool_image_status() + + # Check expectations + assert actual_status == dev_env.DevEnv.Status.OK + + mock___init__.assert_called_once() + +@patch.object(dev_env.DevEnv, "__init__") +def test_DevEnv_get_tool_image_status_unavailable_image(mock___init__: MagicMock) -> None: + # Test setup + mock___init__.return_value = None + + test_dev_env = dev_env.DevEnv(MagicMock()) + mock_tool_image1 = MagicMock() + mock_tool_image1.availability = dev_env.ToolImage.NOT_AVAILABLE + mock_tool_image2 = MagicMock() + mock_tool_image2.availability = dev_env.ToolImage.LOCAL_ONLY + test_dev_env.tool_images = [ + mock_tool_image1, + mock_tool_image2 + ] + + # Run unit under test + actual_status = test_dev_env.get_tool_image_status() + + # Check expectations + assert actual_status == dev_env.DevEnv.Status.UNAVAILABLE_IMAGE + + mock___init__.assert_called_once() + +@patch.object(dev_env.DevEnv, "__init__") +def test_DevEnv_get_tool_image_status_reinstall_needed(mock___init__: MagicMock) -> None: + # Test setup + mock___init__.return_value = None + + test_dev_env = dev_env.DevEnv(MagicMock()) + mock_tool_image1 = MagicMock() + mock_tool_image1.availability = dev_env.ToolImage.REGISTRY_ONLY + mock_tool_image2 = MagicMock() + mock_tool_image2.availability = dev_env.ToolImage.LOCAL_ONLY + test_dev_env.tool_images = [ + mock_tool_image1, + mock_tool_image2 + ] + + # Run unit under test + actual_status = test_dev_env.get_tool_image_status() + + # Check expectations + assert actual_status == dev_env.DevEnv.Status.REINSTALL_NEEDED + + mock___init__.assert_called_once() + def test_DevEnv_get_deserialized_is_installed_true() -> None: # Test setup test_descriptor: dict[str, Any] = {