summaryrefslogtreecommitdiffstats
path: root/tests/unit/cli/test_module.py
blob: 822fa6066e254a6a74f7dd9542f98cf9c8135a2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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']