Files
errorfix-cli/tests/test_cli.py
2026-02-01 03:56:35 +00:00

47 lines
1.4 KiB
Python

import pytest
from click.testing import CliRunner
from errorfix.cli import cli
class TestCLI:
def setup_method(self):
self.runner = CliRunner()
def test_cli_help(self):
result = self.runner.invoke(cli, ['--help'])
assert result.exit_code == 0
assert 'cli' in result.output.lower()
def test_fix_command_help(self):
result = self.runner.invoke(cli, ['fix', '--help'])
assert result.exit_code == 0
assert 'input' in result.output.lower()
def test_fix_with_stdin_input(self):
result = self.runner.invoke(cli, ['fix', '-i', '-'], input='Unknown error')
assert result.exit_code == 0
def test_fix_with_rule_path(self):
result = self.runner.invoke(
cli,
['fix', '-r', 'rules/python', '-i', '-'],
input="NameError: name 'foo' is not defined"
)
assert result.exit_code == 0
def test_fix_with_json_output(self):
result = self.runner.invoke(
cli,
['fix', '-f', 'json', '-i', '-'],
input='Unknown error'
)
assert result.exit_code == 0
def test_plugins_command(self):
result = self.runner.invoke(cli, ['plugins'])
assert result.exit_code == 0
def test_check_command(self):
result = self.runner.invoke(cli, ['check', '-r', 'rules/python'])
assert result.exit_code == 0