diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 08:35:51 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 08:35:51 +0000 |
commit | 641d0d615623d4818993e1967fc96af1eefc4605 (patch) | |
tree | c40f205eb559c8a495489262190a0be4f1829740 /tests/units/cli/test__init__.py | |
parent | Adding upstream version 0.13.0. (diff) | |
download | anta-641d0d615623d4818993e1967fc96af1eefc4605.tar.xz anta-641d0d615623d4818993e1967fc96af1eefc4605.zip |
Adding upstream version 0.14.0.upstream/0.14.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/units/cli/test__init__.py')
-rw-r--r-- | tests/units/cli/test__init__.py | 46 |
1 files changed, 26 insertions, 20 deletions
diff --git a/tests/units/cli/test__init__.py b/tests/units/cli/test__init__.py index 0e84e14..0701083 100644 --- a/tests/units/cli/test__init__.py +++ b/tests/units/cli/test__init__.py @@ -1,58 +1,64 @@ # Copyright (c) 2023-2024 Arista Networks, Inc. # Use of this source code is governed by the Apache License 2.0 # that can be found in the LICENSE file. -""" -Tests for anta.cli.__init__ -""" +"""Tests for anta.cli.__init__.""" from __future__ import annotations -from click.testing import CliRunner +from typing import TYPE_CHECKING +from unittest.mock import patch -from anta.cli import anta +import pytest + +from anta.cli import anta, cli from anta.cli.utils import ExitCode +if TYPE_CHECKING: + from click.testing import CliRunner + def test_anta(click_runner: CliRunner) -> None: - """ - Test anta main entrypoint - """ + """Test anta main entrypoint.""" result = click_runner.invoke(anta) assert result.exit_code == ExitCode.OK assert "Usage" in result.output def test_anta_help(click_runner: CliRunner) -> None: - """ - Test anta --help - """ + """Test anta --help.""" result = click_runner.invoke(anta, ["--help"]) assert result.exit_code == ExitCode.OK assert "Usage" in result.output def test_anta_exec_help(click_runner: CliRunner) -> None: - """ - Test anta exec --help - """ + """Test anta exec --help.""" result = click_runner.invoke(anta, ["exec", "--help"]) assert result.exit_code == ExitCode.OK assert "Usage: anta exec" in result.output def test_anta_debug_help(click_runner: CliRunner) -> None: - """ - Test anta debug --help - """ + """Test anta debug --help.""" result = click_runner.invoke(anta, ["debug", "--help"]) assert result.exit_code == ExitCode.OK assert "Usage: anta debug" in result.output def test_anta_get_help(click_runner: CliRunner) -> None: - """ - Test anta get --help - """ + """Test anta get --help.""" result = click_runner.invoke(anta, ["get", "--help"]) assert result.exit_code == ExitCode.OK assert "Usage: anta get" in result.output + + +def test_uncaught_failure_anta(caplog: pytest.LogCaptureFixture) -> None: + """Test uncaught failure when running ANTA cli.""" + with ( + pytest.raises(SystemExit) as e_info, + patch("anta.cli.anta", side_effect=ZeroDivisionError()), + ): + cli() + assert "CRITICAL" in caplog.text + assert "Uncaught Exception when running ANTA CLI" in caplog.text + assert e_info.value.code == 1 |