Testing Duplicate Command Detection Rule in TheFuck
This test suite validates the ‘dry’ rule functionality in TheFuck project, which handles duplicate word detection and correction in shell commands. The tests ensure proper identification and resolution of repeated command segments like ‘cd cd’ or ‘git git’.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
nvbn/thefuck
tests/rules/test_dry.py
import pytest
from thefuck.rules.dry import match, get_new_command
from thefuck.types import Command
@pytest.mark.parametrize('command', [
Command('cd cd foo', ''),
Command('git git push origin/master', '')])
def test_match(command):
assert match(command)
@pytest.mark.parametrize('command, new_command', [
(Command('cd cd foo', ''), 'cd foo'),
(Command('git git push origin/master', ''), 'git push origin/master')])
def test_get_new_command(command, new_command):
assert get_new_command(command) == new_command