예제 #1
0
def test_run_rule(capsys):
    with patch('thefuck.main.confirm', return_value=True):
        main.run_rule(types.Rule('', None, lambda *_: 'new-command', True),
                      None, None)
        assert capsys.readouterr() == ('new-command\n', '')
    with patch('thefuck.main.confirm', return_value=False):
        main.run_rule(types.Rule('', None, lambda *_: 'new-command', True),
                      None, None)
        assert capsys.readouterr() == ('', '')
예제 #2
0
def test_run_rule(capsys):
    with patch('thefuck.main.confirm', return_value=True):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      None, None)
        assert capsys.readouterr() == ('new-command\n', '')
    with patch('thefuck.main.confirm', return_value=False):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      None, None)
        assert capsys.readouterr() == ('', '')
예제 #3
0
 def test_run_rule_with_side_effect(self, capsys):
     side_effect = Mock()
     settings = Mock()
     command = Command()
     main.run_rule(Rule(get_new_command=lambda *_: 'new-command',
                        side_effect=side_effect),
                   command, settings)
     assert capsys.readouterr() == ('new-command\n', '')
     side_effect.assert_called_once_with(command, settings)
예제 #4
0
 def test_run_rule_with_side_effect(self, capsys):
     side_effect = Mock()
     settings = Mock()
     command = Command()
     main.run_rule(
         Rule(get_new_command=lambda *_: 'new-command',
              side_effect=side_effect), command, settings)
     assert capsys.readouterr() == ('new-command\n', '')
     side_effect.assert_called_once_with(command, settings)
예제 #5
0
def test_run_rule(capsys):
    with patch('thefuck.main.confirm', return_value=True):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      None, None)
        assert capsys.readouterr() == ('new-command\n', '')
        # With side effect:
        side_effect = Mock()
        settings = Mock()
        command = Mock()
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command',
                           side_effect=side_effect),
                      command, settings)
        assert capsys.readouterr() == ('new-command\n', '')
        side_effect.assert_called_once_with(command, settings)
    with patch('thefuck.main.confirm', return_value=False):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      None, None)
        assert capsys.readouterr() == ('', '')
예제 #6
0
def test_run_rule(capsys):
    with patch('thefuck.main.confirm', return_value=True):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      Command(), Mock(), None)
        assert capsys.readouterr() == ('new-command\n', '')
        # With side effect:
        side_effect = Mock()
        settings = Mock()
        command = Mock(script='ls')
        history = Mock()
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command',
                           side_effect=side_effect),
                      command, history, settings)
        assert capsys.readouterr() == ('new-command\n', '')
        side_effect.assert_called_once_with(command, settings)
        # Ensure that history updated:
        history.update.assert_called_once_with(last_script='ls',
                                               last_fixed_script='new-command')
    with patch('thefuck.main.confirm', return_value=False):
        main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                      Command(), Mock(), None)
        assert capsys.readouterr() == ('', '')
예제 #7
0
 def test_when_not_comfirmed(self, capsys, confirm):
     confirm.return_value = False
     main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                   Command(), None)
     assert capsys.readouterr() == ('', '')
예제 #8
0
 def test_run_rule(self, capsys):
     main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                   Command(), None)
     assert capsys.readouterr() == ('new-command\n', '')
예제 #9
0
 def test_hisotry_updated(self):
     history = Mock()
     main.run_rule(Rule(get_new_command=lambda *_: 'ls -lah'),
                   Command('ls'), history, None)
     history.update.assert_called_once_with(last_command='ls',
                                            last_fixed_command='ls -lah')
예제 #10
0
 def test_when_not_comfirmed(self, capsys, confirm):
     confirm.return_value = False
     main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                   Command(), None)
     assert capsys.readouterr() == ('', '')
예제 #11
0
 def test_run_rule(self, capsys):
     main.run_rule(Rule(get_new_command=lambda *_: 'new-command'),
                   Command(), None)
     assert capsys.readouterr() == ('new-command\n', '')