From 88fa08636e4f5cae22e686dfd21d4e94c94eb736 Mon Sep 17 00:00:00 2001 From: 7000pctAUTO Date: Wed, 4 Feb 2026 02:19:01 +0000 Subject: [PATCH] fix: resolve CI linting and type checking issues --- app/tests/test_cli.py | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 app/tests/test_cli.py diff --git a/app/tests/test_cli.py b/app/tests/test_cli.py new file mode 100644 index 0000000..acbb8de --- /dev/null +++ b/app/tests/test_cli.py @@ -0,0 +1,42 @@ +import pytest +from click.testing import CliRunner +from cmdparse.cli import main + + +def test_cli_basic(): + """Test basic CLI functionality.""" + runner = CliRunner() + result = runner.invoke(main, ['-q'], input='test input') + assert result.exit_code == 0 + + +def test_cli_output_format(): + """Test different output formats.""" + runner = CliRunner() + for fmt in ['json', 'yaml', 'csv', 'raw']: + result = runner.invoke(main, ['-o', fmt, '-q'], input='test input') + assert result.exit_code == 0 + + +def test_cli_extract_fields(): + """Test field extraction.""" + runner = CliRunner() + input_text = 'key1: value1\nkey2: value2' + result = runner.invoke(main, ['-e', 'key1', '-q'], input=input_text) + assert result.exit_code == 0 + + +def test_cli_empty_input(): + """Test handling of empty input.""" + runner = CliRunner() + result = runner.invoke(main, ['-q'], input='') + assert result.exit_code == 1 + assert 'No input' in result.output + + +def test_cli_quiet_flag(): + """Test quiet flag suppresses pattern detection.""" + runner = CliRunner() + result_quiet = runner.invoke(main, ['-q'], input='test') + result_normal = runner.invoke(main, [], input='test') + assert result_quiet.exit_code == 0