diff --git a/tests/rules/test_no_such_file.py b/tests/rules/test_no_such_file.py index ba35477..3b25152 100644 --- a/tests/rules/test_no_such_file.py +++ b/tests/rules/test_no_such_file.py @@ -11,6 +11,14 @@ def test_match(command): assert match(command, None) +@pytest.mark.parametrize('command', [ + Command(script='mv foo bar/', stderr=""), + Command(script='mv foo bar/foo', stderr="mv: permission denied"), + ]) +def test_not_match(command): + assert not match(command, None) + + @pytest.mark.parametrize('command, new_command', [ (Command(script='mv foo bar/foo', stderr="mv: cannot move 'foo' to 'bar/foo': No such file or directory"), 'mkdir -p bar && mv foo bar/foo'), (Command(script='mv foo bar/', stderr="mv: cannot move 'foo' to 'bar/': No such file or directory"), 'mkdir -p bar && mv foo bar/'), diff --git a/thefuck/rules/git_push_pull.py b/thefuck/rules/git_push_pull.py index 3529a18..f2174be 100644 --- a/thefuck/rules/git_push_pull.py +++ b/thefuck/rules/git_push_pull.py @@ -1,5 +1,4 @@ -from thefuck import utils -from thefuck.shells import and_ +from thefuck import utils, shells from thefuck.utils import replace_argument @@ -13,5 +12,5 @@ def match(command, settings): @utils.git_support def get_new_command(command, settings): - return and_(replace_argument(command.script, 'push', 'pull'), - command.script) + return shells.and_(replace_argument(command.script, 'push', 'pull'), + command.script)