mirror of
https://github.com/nvbn/thefuck.git
synced 2025-03-14 06:38:32 +00:00
Test pyenv change
This commit is contained in:
parent
773b650cac
commit
c8cee17fb2
@ -9,21 +9,6 @@ def output(pyenv_cmd):
|
||||
return "pyenv: no such command `{}'".format(pyenv_cmd)
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def Popen(mocker):
|
||||
mock = mocker.patch('thefuck.rules.pyenv_no_such_command.Popen')
|
||||
mock.return_value.stdout.readlines.return_value = (
|
||||
b'--version\nactivate\ncommands\ncompletions\ndeactivate\nexec_\n'
|
||||
b'global\nhelp\nhooks\ninit\ninstall\nlocal\nprefix_\n'
|
||||
b'realpath.dylib\nrehash\nroot\nshell\nshims\nuninstall\nversion_\n'
|
||||
b'version-file\nversion-file-read\nversion-file-write\nversion-name_\n'
|
||||
b'version-origin\nversions\nvirtualenv\nvirtualenv-delete_\n'
|
||||
b'virtualenv-init\nvirtualenv-prefix\nvirtualenvs_\n'
|
||||
b'virtualenvwrapper\nvirtualenvwrapper_lazy\nwhence\nwhich_\n'
|
||||
).split()
|
||||
return mock
|
||||
|
||||
|
||||
@pytest.mark.parametrize('script, pyenv_cmd', [
|
||||
('pyenv globe', 'globe'),
|
||||
('pyenv intall 3.8.0', 'intall'),
|
||||
|
@ -1,7 +1,7 @@
|
||||
import re
|
||||
from thefuck.utils import cache, for_app, replace_argument, replace_command, which
|
||||
from thefuck.specific.devenv import env_available, COMMON_TYPOS
|
||||
from subprocess import PIPE, Popen
|
||||
from thefuck.specific.devenv import env_available, COMMON_TYPOS, get_commands
|
||||
#from subprocess import PIPE, Popen
|
||||
|
||||
enabled_by_default = env_available
|
||||
|
||||
@ -11,11 +11,6 @@ def match(command):
|
||||
return 'pyenv: no such command' in command.output
|
||||
|
||||
|
||||
def get_commands():
|
||||
proc = Popen(['pyenv', 'commands'], stdout=PIPE)
|
||||
return [line.decode('utf-8').strip() for line in proc.stdout.readlines()]
|
||||
|
||||
|
||||
if which('pyenv'):
|
||||
get_commands = cache(which('pyenv'))(get_commands)
|
||||
|
||||
@ -25,5 +20,5 @@ def get_new_command(command):
|
||||
broken = re.findall(r"pyenv: no such command `([^']*)'", command.output)[0]
|
||||
matched = [replace_argument(command.script, broken, common_typo)
|
||||
for common_typo in COMMON_TYPOS.get(broken, [])]
|
||||
matched.extend(replace_command(command, broken, get_commands()))
|
||||
matched.extend(replace_command(command, broken, get_commands('pyenv')))
|
||||
return matched
|
||||
|
Loading…
x
Reference in New Issue
Block a user