diff options
-rw-r--r-- | tests/data/helper/ansible.yaml | 12 | ||||
-rw-r--r-- | tests/data/helper/perftest.yaml | 5 | ||||
-rw-r--r-- | tests/data/helper/suite.yaml | 6 | ||||
-rw-r--r-- | tests/data/helper/version.yaml | 12 | ||||
-rw-r--r-- | tests/unit/cli/ansible_test.py | 31 | ||||
-rw-r--r-- | tests/unit/cli/test_module.py | 30 |
6 files changed, 65 insertions, 31 deletions
diff --git a/tests/data/helper/ansible.yaml b/tests/data/helper/ansible.yaml new file mode 100644 index 00000000..c55816fb --- /dev/null +++ b/tests/data/helper/ansible.yaml @@ -0,0 +1,12 @@ +--- + + tests: + - command: ['ansible', 'prepare'] + output: "prepare ansible env\n" + + - command: ['ansible', 'show'] + output: "show ansible configuration\n" + + - command: ['ansible', 'status'] + output: "check connectivity\n" + diff --git a/tests/data/helper/perftest.yaml b/tests/data/helper/perftest.yaml new file mode 100644 index 00000000..26c58452 --- /dev/null +++ b/tests/data/helper/perftest.yaml @@ -0,0 +1,5 @@ +--- + + tests: + - command: ['perftest', 'run'] + output: "Run a perftest\n" diff --git a/tests/data/helper/suite.yaml b/tests/data/helper/suite.yaml new file mode 100644 index 00000000..718ae440 --- /dev/null +++ b/tests/data/helper/suite.yaml @@ -0,0 +1,6 @@ +--- + + tests: + - command: ['suite', 'run'] + output: "Run a suite\n" + diff --git a/tests/data/helper/version.yaml b/tests/data/helper/version.yaml new file mode 100644 index 00000000..b23f16f2 --- /dev/null +++ b/tests/data/helper/version.yaml @@ -0,0 +1,12 @@ +--- + + tests: + - command: ['version', 'list'] + output: "Lists all the different versions\n" + + - command: ['version', 'install', 'Colorado'] + output: "Install: Colorado\n" + + - command: ['version', 'uninstall', 'Arno'] + output: "Uninstall: Arno\n" + diff --git a/tests/unit/cli/ansible_test.py b/tests/unit/cli/ansible_test.py deleted file mode 100644 index 02941333..00000000 --- a/tests/unit/cli/ansible_test.py +++ /dev/null @@ -1,31 +0,0 @@ -############################################################################## -# Copyright (c) 2016 ZTE Corp and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -import pytest -from click.testing import CliRunner -from qtip.cli.entry import cli - - -class TestClass(object): - - @pytest.fixture() - def runner(self): - return CliRunner() - - def test_prepare(self, runner): - result = runner.invoke(cli, ['ansible', 'prepare']) - assert result.output == "prepare ansible env\n" - - def test_show(self, runner): - result = runner.invoke(cli, ['ansible', 'show']) - assert result.output == "show ansible configuration\n" - - def test_status(self, runner): - result = runner.invoke(cli, ['ansible', 'status']) - assert result.output == "check connectivity\n" diff --git a/tests/unit/cli/test_module.py b/tests/unit/cli/test_module.py new file mode 100644 index 00000000..822fa606 --- /dev/null +++ b/tests/unit/cli/test_module.py @@ -0,0 +1,30 @@ +import os +import pytest +import sys +import yaml + +from click.testing import CliRunner +from qtip.cli.entry import cli + + +class TestClass(object): + + @pytest.fixture() + def runner(self): + return CliRunner() + + def test(self, runner): + unit = 'ansible' + test_file = 'data/helper/' + unit + '.yaml' + path = os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, test_file) + + with open(path) as trial: + content = trial.read() + data = yaml.safe_load(content)['tests'] + if data is None: + print("Unit Test does not exist") + sys.exit(1) + else: + for i in range(0, len(data)): + result = runner.invoke(cli, data[i]['command']) + assert result.output == data[i]['output'] |