1
0
mirror of https://github.com/nvbn/thefuck.git synced 2024-10-06 02:41:10 +01:00

Remove on_change from CommandSelector

This commit is contained in:
nvbn 2015-09-08 12:27:17 +03:00
parent b2be0b3cad
commit 1fb6dd925b
2 changed files with 4 additions and 11 deletions

View File

@ -43,8 +43,6 @@ def test_read_actions(patch_getch):
def test_command_selector():
selector = ui.CommandSelector([1, 2, 3])
assert selector.value == 1
changes = []
selector.on_change(changes.append)
selector.next()
assert selector.value == 2
selector.next()
@ -53,7 +51,6 @@ def test_command_selector():
assert selector.value == 1
selector.previous()
assert selector.value == 3
assert changes == [1, 2, 3, 1, 3]
@pytest.mark.usefixtures('no_colors')

View File

@ -53,24 +53,17 @@ class CommandSelector(object):
def __init__(self, commands):
self._commands = commands
self._index = 0
self._on_change = lambda x: x
def next(self):
self._index = (self._index + 1) % len(self._commands)
self._on_change(self.value)
def previous(self):
self._index = (self._index - 1) % len(self._commands)
self._on_change(self.value)
@property
def value(self):
return self._commands[self._index]
def on_change(self, fn):
self._on_change = fn
fn(self.value)
def select_command(corrected_commands):
"""Returns:
@ -89,7 +82,8 @@ def select_command(corrected_commands):
logs.show_corrected_command(selector.value)
return selector.value
selector.on_change(lambda val: logs.confirm_text(val))
logs.confirm_text(selector.value)
for action in read_actions():
if action == SELECT:
sys.stderr.write('\n')
@ -99,5 +93,7 @@ def select_command(corrected_commands):
return
elif action == PREVIOUS:
selector.previous()
logs.confirm_text(selector.value)
elif action == NEXT:
selector.next()
logs.confirm_text(selector.value)