def test_confirm(capsys): # When confirmation not required: assert main.confirm('command', Mock(require_confirmation=False)) assert capsys.readouterr() == ('', 'command\n') # When confirmation required and confirmed: with patch('thefuck.main.sys.stdin.read', return_value='\n'): assert main.confirm('command', Mock(require_confirmation=True)) assert capsys.readouterr() == ('', 'command [Enter/Ctrl+C]') # When confirmation required and ctrl+c: with patch('thefuck.main.sys.stdin.read', side_effect=KeyboardInterrupt): assert not main.confirm('command', Mock(require_confirmation=True)) assert capsys.readouterr() == ('', 'command [Enter/Ctrl+C]Aborted\n')
def test_confirm(capsys): # When confirmation not required: assert main.confirm('command', None, Mock(require_confirmation=False)) assert capsys.readouterr() == ('', 'command\n') # With side effect and without confirmation: assert main.confirm('command', Mock(), Mock(require_confirmation=False)) assert capsys.readouterr() == ('', 'command*\n') # When confirmation required and confirmed: with patch('thefuck.main.sys.stdin.read', return_value='\n'): assert main.confirm( 'command', None, Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command [enter/ctrl+c]') # With side effect: assert main.confirm( 'command', Mock(), Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command* [enter/ctrl+c]') # When confirmation required and ctrl+c: with patch('thefuck.main.sys.stdin.read', side_effect=KeyboardInterrupt): assert not main.confirm('command', None, Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command [enter/ctrl+c]Aborted\n')
def test_when_confirmation_required_and_aborted(self, capsys, stdin): stdin.side_effect = KeyboardInterrupt assert not main.confirm('command', None, Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command [enter/ctrl+c]Aborted\n')
def test_when_confirmation_required_and_confirmed_with_side_effect(self, capsys, stdin): assert main.confirm('command', Mock(), Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command* [enter/ctrl+c]')
def test_with_side_effect_and_without_confirmation(self, capsys): assert main.confirm('command', Mock(), Mock(require_confirmation=False)) assert capsys.readouterr() == ('', 'command*\n')
def test_when_not_required(self, capsys): assert main.confirm('command', None, Mock(require_confirmation=False)) assert capsys.readouterr() == ('', 'command\n')
def test_when_confirmation_required_and_aborted(self, capsys, stdin): stdin.side_effect = KeyboardInterrupt assert not main.confirm( 'command', None, Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command [enter/ctrl+c]Aborted\n')
def test_when_confirmation_required_and_confirmed_with_side_effect( self, capsys, stdin): assert main.confirm('command', Mock(), Mock(require_confirmation=True, no_colors=True)) assert capsys.readouterr() == ('', 'command* [enter/ctrl+c]')