mirror of
				https://github.com/nvbn/thefuck.git
				synced 2025-10-31 15:12:20 +00:00 
			
		
		
		
	#298 Suggest more than one result in *_no_command rules
This commit is contained in:
		| @@ -22,7 +22,7 @@ def test_match(brew_unknown_cmd): | ||||
|  | ||||
| def test_get_new_command(brew_unknown_cmd, brew_unknown_cmd2): | ||||
|     assert get_new_command(Command('brew inst', stderr=brew_unknown_cmd), | ||||
|                            None) == 'brew list' | ||||
|                            None) == ['brew list', 'brew install', 'brew uninstall'] | ||||
|  | ||||
|     assert get_new_command(Command('brew instaa', stderr=brew_unknown_cmd2), | ||||
|                            None) == 'brew install' | ||||
|                            None) == ['brew install', 'brew uninstall', 'brew list'] | ||||
|   | ||||
| @@ -122,8 +122,8 @@ def test_not_match(script, stderr): | ||||
|  | ||||
| @pytest.mark.usefixtures('docker_help') | ||||
| @pytest.mark.parametrize('wrong, fixed', [ | ||||
|     ('pes', 'ps'), | ||||
|     ('tags', 'tag')]) | ||||
|     ('pes', ['ps', 'push', 'pause']), | ||||
|     ('tags', ['tag', 'stats', 'images'])]) | ||||
| def test_get_new_command(wrong, fixed): | ||||
|     command = Command('docker {}'.format(wrong), stderr=stderr(wrong)) | ||||
|     assert get_new_command(command, None) == 'docker {}'.format(fixed) | ||||
|     assert get_new_command(command, None) == ['docker {}'.format(x) for x in fixed] | ||||
|   | ||||
| @@ -50,8 +50,8 @@ def test_match(git_not_command, git_command, git_not_command_one_of_this): | ||||
| def test_get_new_command(git_not_command, git_not_command_one_of_this, | ||||
|                          git_not_command_closest): | ||||
|     assert get_new_command(Command('git brnch', stderr=git_not_command), None) \ | ||||
|            == 'git branch' | ||||
|            == ['git branch'] | ||||
|     assert get_new_command(Command('git st', stderr=git_not_command_one_of_this), | ||||
|                            None) == 'git status' | ||||
|                            None) == ['git stats', 'git stash', 'git stage'] | ||||
|     assert get_new_command(Command('git tags', stderr=git_not_command_closest), | ||||
|                            None) == 'git tag' | ||||
|                            None) == ['git tag', 'git stage'] | ||||
|   | ||||
| @@ -25,4 +25,4 @@ def test_get_new_command(mocker): | ||||
|     mocker.patch('thefuck.rules.gulp_not_task.get_gulp_tasks', return_value=[ | ||||
|         'serve', 'build', 'default']) | ||||
|     command = Command('gulp srve', stdout('srve')) | ||||
|     assert get_new_command(command, None) == 'gulp serve' | ||||
|     assert get_new_command(command, None) == ['gulp serve', 'gulp default'] | ||||
|   | ||||
| @@ -27,8 +27,8 @@ def test_not_match(script, stderr): | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize('cmd, result', [ | ||||
|     ('log', 'heroku logs'), | ||||
|     ('pge', 'heroku pg')]) | ||||
|     ('log', ['heroku logs', 'heroku pg']), | ||||
|     ('pge', ['heroku pg', 'heroku logs'])]) | ||||
| def test_get_new_command(cmd, result): | ||||
|     command = Command('heroku {}'.format(cmd), stderr=suggest_stderr(cmd)) | ||||
|     assert get_new_command(command, None) == result | ||||
|   | ||||
| @@ -9,6 +9,7 @@ def is_not_task(): | ||||
|  | ||||
| Did you mean this? | ||||
|          repl | ||||
|          jar | ||||
| ''' | ||||
|  | ||||
|  | ||||
| @@ -19,4 +20,4 @@ def test_match(is_not_task): | ||||
|  | ||||
| def test_get_new_command(is_not_task): | ||||
|     assert get_new_command(Mock(script='lein rpl --help', stderr=is_not_task), | ||||
|                            None) == 'lein repl --help' | ||||
|                            None) == ['lein repl --help', 'lein jar --help'] | ||||
|   | ||||
| @@ -22,8 +22,8 @@ def test_get_new_command(): | ||||
|     assert get_new_command( | ||||
|         Command(stderr='vom: not found', | ||||
|                 script='vom file.py'), | ||||
|         None) == 'vim file.py' | ||||
|         None) == ['vim file.py'] | ||||
|     assert get_new_command( | ||||
|         Command(stderr='fucck: not found', | ||||
|                 script='fucck'), | ||||
|         Command) == 'fsck' | ||||
|         Command) == ['fsck'] | ||||
|   | ||||
| @@ -61,30 +61,30 @@ def test_not_match(command): | ||||
|     assert not match(command, None) | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize('command, new_command', [ | ||||
| @pytest.mark.parametrize('command, new_commands', [ | ||||
|     (Command('tsuru log', stderr=( | ||||
|         'tsuru: "log" is not a tsuru command. See "tsuru help".\n' | ||||
|         '\nDid you mean?\n' | ||||
|         '\tapp-log\n' | ||||
|         '\tlogin\n' | ||||
|         '\tlogout\n' | ||||
|     )), 'tsuru login'), | ||||
|     )), ['tsuru login', 'tsuru logout', 'tsuru app-log']), | ||||
|     (Command('tsuru app-l', stderr=( | ||||
|         'tsuru: "app-l" is not a tsuru command. See "tsuru help".\n' | ||||
|         '\nDid you mean?\n' | ||||
|         '\tapp-list\n' | ||||
|         '\tapp-log\n' | ||||
|     )), 'tsuru app-log'), | ||||
|     )), ['tsuru app-log', 'tsuru app-list']), | ||||
|     (Command('tsuru user-list', stderr=( | ||||
|         'tsuru: "user-list" is not a tsuru command. See "tsuru help".\n' | ||||
|         '\nDid you mean?\n' | ||||
|         '\tteam-user-list\n' | ||||
|     )), 'tsuru team-user-list'), | ||||
|     )), ['tsuru team-user-list']), | ||||
|     (Command('tsuru targetlist', stderr=( | ||||
|         'tsuru: "targetlist" is not a tsuru command. See "tsuru help".\n' | ||||
|         '\nDid you mean?\n' | ||||
|         '\ttarget-list\n' | ||||
|     )), 'tsuru target-list'), | ||||
|     )), ['tsuru target-list']), | ||||
| ]) | ||||
| def test_get_new_command(command, new_command): | ||||
|     assert get_new_command(command, None) == new_command | ||||
| def test_get_new_command(command, new_commands): | ||||
|     assert get_new_command(command, None) == new_commands | ||||
|   | ||||
		Reference in New Issue
	
	Block a user