1
0
mirror of https://github.com/nvbn/thefuck.git synced 2025-01-19 12:24:29 +00:00

58 lines
1.7 KiB
Python
Raw Normal View History

2015-07-25 21:02:04 +03:00
from pexpect import TIMEOUT
2015-07-24 08:04:49 +03:00
def with_confirmation(proc):
"""Ensures that command can be fixed when confirmation enabled."""
2015-07-25 03:22:05 +03:00
proc.sendline(u'mkdir -p ~/.thefuck')
proc.sendline(u'echo "require_confirmation = True" > ~/.thefuck/settings.py')
2015-07-25 03:22:05 +03:00
proc.sendline(u'ehco test')
2015-07-24 08:04:49 +03:00
2015-07-25 03:22:05 +03:00
proc.sendline(u'fuck')
2015-07-25 21:02:04 +03:00
assert proc.expect([TIMEOUT, u'echo test'])
assert proc.expect([TIMEOUT, u'enter'])
assert proc.expect_exact([TIMEOUT, u'ctrl+c'])
2015-07-24 08:04:49 +03:00
proc.send('\n')
2015-07-25 21:02:04 +03:00
assert proc.expect([TIMEOUT, u'test'])
2015-07-24 08:04:49 +03:00
def history_changed(proc):
"""Ensures that history changed."""
proc.send('\033[A')
2015-07-27 17:51:33 +03:00
assert proc.expect([TIMEOUT, u'echo test'])
def history_not_changed(proc):
"""Ensures that history not changed."""
proc.send('\033[A')
2015-07-27 17:51:33 +03:00
assert proc.expect([TIMEOUT, u'fuck'])
2015-07-24 23:14:58 +03:00
def refuse_with_confirmation(proc):
"""Ensures that fix can be refused when confirmation enabled."""
2015-07-25 03:22:05 +03:00
proc.sendline(u'mkdir -p ~/.thefuck')
proc.sendline(u'echo "require_confirmation = True" > ~/.thefuck/settings.py')
2015-07-25 03:22:05 +03:00
proc.sendline(u'ehco test')
2015-07-24 23:14:58 +03:00
2015-07-25 03:22:05 +03:00
proc.sendline(u'fuck')
2015-07-25 21:02:04 +03:00
assert proc.expect([TIMEOUT, u'echo test'])
assert proc.expect([TIMEOUT, u'enter'])
assert proc.expect_exact([TIMEOUT, u'ctrl+c'])
2015-07-24 23:14:58 +03:00
proc.send('\003')
2015-07-25 21:02:04 +03:00
assert proc.expect([TIMEOUT, u'Aborted'])
2015-07-24 23:14:58 +03:00
2015-07-24 08:04:49 +03:00
def without_confirmation(proc):
"""Ensures that command can be fixed when confirmation disabled."""
2015-07-25 03:22:05 +03:00
proc.sendline(u'mkdir -p ~/.thefuck')
proc.sendline(u'echo "require_confirmation = False" > ~/.thefuck/settings.py')
2015-07-25 03:22:05 +03:00
proc.sendline(u'ehco test')
2015-07-24 08:04:49 +03:00
2015-07-25 03:22:05 +03:00
proc.sendline(u'fuck')
2015-07-25 21:02:04 +03:00
assert proc.expect([TIMEOUT, u'echo test'])
assert proc.expect([TIMEOUT, u'test'])