diff options
author | Kevin Van Brunt <kmvanbrunt@gmail.com> | 2019-04-23 23:38:06 -0400 |
---|---|---|
committer | Kevin Van Brunt <kmvanbrunt@gmail.com> | 2019-04-23 23:38:06 -0400 |
commit | 034ee380d549cee507e80344e87bc016549750eb (patch) | |
tree | 556c808b2ad3d2c5004cfc2f9277865ee14eaab7 /tests/test_pyscript.py | |
parent | ca7f24b238cdfd67adddec0146e7519352589484 (diff) | |
download | cmd2-git-034ee380d549cee507e80344e87bc016549750eb.tar.gz |
Added unit test for stdout capture in pyscript
Diffstat (limited to 'tests/test_pyscript.py')
-rw-r--r-- | tests/test_pyscript.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/test_pyscript.py b/tests/test_pyscript.py index 6981980b..4866548b 100644 --- a/tests/test_pyscript.py +++ b/tests/test_pyscript.py @@ -4,9 +4,16 @@ Unit/functional testing for pytest in cmd2 """ import os +from cmd2 import plugin from .conftest import run_cmd +HOOK_OUTPUT = "TEST_OUTPUT" + +def cmdfinalization_hook(data: plugin.CommandFinalizationData) -> plugin.CommandFinalizationData: + """A cmdfinalization_hook hook which requests application exit""" + print(HOOK_OUTPUT) + return data def test_pyscript_help(base_app, request): test_dir = os.path.dirname(request.module.__file__) @@ -23,3 +30,13 @@ def test_pyscript_dir(base_app, request): out, err = run_cmd(base_app, 'pyscript {}'.format(python_script)) assert out assert out[0] == "['cmd_echo']" + + +def test_pyscript_stdout_capture(base_app, request): + base_app.register_cmdfinalization_hook(cmdfinalization_hook) + test_dir = os.path.dirname(request.module.__file__) + python_script = os.path.join(test_dir, 'pyscript', 'stdout_capture.py') + out, err = run_cmd(base_app, 'pyscript {} {}'.format(python_script, HOOK_OUTPUT)) + + assert out[0] == "PASSED" + assert out[1] == "PASSED" |