halfapi/tests/cli/test_cli_proj.py

60 lines
1.6 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
import os
import subprocess
import importlib
import tempfile
from unittest.mock import patch
2022-07-18 23:23:09 +02:00
import json
import toml
import pytest
from click.testing import CliRunner
from configparser import ConfigParser
PROJNAME = os.environ.get('PROJ','tmp_api')
class TestCliProj():
def test_cmds(self, project_runner):
assert project_runner('--help').exit_code == 0
#assert project_runner('run', '--help').exit_code == 0
#assert project_runner('domain', '--help').exit_code == 0
def test_domain_commands(self, project_runner):
""" TODO: Test create command
"""
r = project_runner('domain')
print(r.stdout)
assert r.exit_code == 1
2022-07-18 23:23:09 +02:00
_, tmp_conf = tempfile.mkstemp()
with open(tmp_conf, 'w') as fh:
fh.write(
toml.dumps({
2022-07-18 23:23:09 +02:00
'domain': {
'dummy_domain': {
'port': 4242,
2022-07-18 23:23:09 +02:00
'name': 'dummy_domain',
'enabled': True
}
},
'project': {
'dryrun': True
2022-07-18 23:23:09 +02:00
}
})
)
r = project_runner(f'domain dummy_domain --dry-run {tmp_conf}')
print(r.stdout)
assert r.exit_code == 0
def test_config_commands(self, project_runner):
try:
r = project_runner('config')
assert r.exit_code == 0
except AssertionError as exc:
subprocess.call(['tree', '-a'])
raise exc