fix: resolve CI linting and type checking issues
Some checks failed
CI / test (push) Has been cancelled
Some checks failed
CI / test (push) Has been cancelled
This commit is contained in:
42
app/tests/test_cli.py
Normal file
42
app/tests/test_cli.py
Normal file
@@ -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
|
||||||
Reference in New Issue
Block a user