mirror of
https://github.com/nvbn/thefuck.git
synced 2025-02-22 12:58:33 +00:00
Merge pull request #492 from scorphus/overridden-aliases
Treat overridden aliases in a better way
This commit is contained in:
commit
95e7d00aec
@ -19,14 +19,18 @@ class TestFish(object):
|
|||||||
return mock
|
return mock
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def environ(self, monkeypatch):
|
def os_environ(self, monkeypatch, key, value):
|
||||||
data = {'TF_OVERRIDDEN_ALIASES': 'cd, ls, man, open'}
|
monkeypatch.setattr('os.environ', {key: value})
|
||||||
monkeypatch.setattr('thefuck.shells.fish.os.environ', data)
|
|
||||||
return data
|
|
||||||
|
|
||||||
@pytest.mark.usefixture('environ')
|
@pytest.mark.parametrize('key, value', [
|
||||||
def test_get_overridden_aliases(self, shell, environ):
|
('TF_OVERRIDDEN_ALIASES', 'cut,git,sed'), # legacy
|
||||||
assert shell._get_overridden_aliases() == ['cd', 'ls', 'man', 'open']
|
('THEFUCK_OVERRIDDEN_ALIASES', 'cut,git,sed'),
|
||||||
|
('THEFUCK_OVERRIDDEN_ALIASES', 'cut, git, sed'),
|
||||||
|
('THEFUCK_OVERRIDDEN_ALIASES', ' cut,\tgit,sed\n'),
|
||||||
|
('THEFUCK_OVERRIDDEN_ALIASES', '\ncut,\n\ngit,\tsed\r')])
|
||||||
|
def test_get_overridden_aliases(self, shell, os_environ):
|
||||||
|
assert shell._get_overridden_aliases() == {'cd', 'cut', 'git', 'grep',
|
||||||
|
'ls', 'man', 'open', 'sed'}
|
||||||
|
|
||||||
@pytest.mark.parametrize('before, after', [
|
@pytest.mark.parametrize('before, after', [
|
||||||
('cd', 'cd'),
|
('cd', 'cd'),
|
||||||
|
@ -7,11 +7,12 @@ from .generic import Generic
|
|||||||
|
|
||||||
class Fish(Generic):
|
class Fish(Generic):
|
||||||
def _get_overridden_aliases(self):
|
def _get_overridden_aliases(self):
|
||||||
overridden_aliases = os.environ.get('TF_OVERRIDDEN_ALIASES', '').strip()
|
overridden = os.environ.get('THEFUCK_OVERRIDDEN_ALIASES',
|
||||||
if overridden_aliases:
|
os.environ.get('TF_OVERRIDDEN_ALIASES', ''))
|
||||||
return [alias.strip() for alias in overridden_aliases.split(',')]
|
default = {'cd', 'grep', 'ls', 'man', 'open'}
|
||||||
else:
|
for alias in overridden.split(','):
|
||||||
return ['cd', 'grep', 'ls', 'man', 'open']
|
default.add(alias.strip())
|
||||||
|
return default
|
||||||
|
|
||||||
def app_alias(self, fuck):
|
def app_alias(self, fuck):
|
||||||
# It is VERY important to have the variables declared WITHIN the alias
|
# It is VERY important to have the variables declared WITHIN the alias
|
||||||
|
Loading…
x
Reference in New Issue
Block a user