'need more fixturesr'

This commit is contained in:
Konstantinos Tsakiltzidis 2016-06-25 13:06:59 +03:00
parent 3017f887b5
commit 28ec6ea977
3 changed files with 64 additions and 64 deletions

View file

@ -17,6 +17,10 @@ test_aliases.py
test_builtins.py
----------------
- Env fixture
test_contexts.py
test_dirstack.py
test_environ.py

View file

@ -11,9 +11,11 @@ from xonsh.built_ins import reglob, pathsearch, helper, superhelper, \
ensure_list_of_strs, list_of_strs_or_callables, regexsearch, \
globsearch
from xonsh.environ import Env
from xonsh.tools import ON_WINDOWS
from tools import mock_xonsh_env
from tools import skip_if_on_windows
HOME_PATH = os.path.expanduser('~')
def test_reglob_tests():
@ -21,77 +23,72 @@ def test_reglob_tests():
for f in testfiles:
assert (f.startswith('test_'))
@pytest.mark.skipif(ON_WINDOWS, reason='Unix stuff')
def test_repath_backslash():
home = os.path.expanduser('~')
built_ins.ENV = Env(HOME=home)
with mock_xonsh_env(built_ins.ENV):
exp = os.listdir(home)
exp = {p for p in exp if re.match(r'\w\w.*', p)}
exp = {os.path.join(home, p) for p in exp}
obs = set(pathsearch(regexsearch, r'~/\w\w.*'))
assert exp == obs
@pytest.fixture
def env():
e = Env(HOME=os.path.expanduser('~'))
built_ins.ENV = e
return e
@pytest.mark.skipif(ON_WINDOWS, reason='Unix stuff')
def test_repath_home_itself():
exp = os.path.expanduser('~')
built_ins.ENV = Env(HOME=exp)
with mock_xonsh_env(built_ins.ENV):
obs = pathsearch(regexsearch, '~')
assert 1 == len(obs)
assert exp == obs[0]
@pytest.mark.skipif(ON_WINDOWS, reason='Unix stuff')
def test_repath_home_contents():
home = os.path.expanduser('~')
built_ins.ENV = Env(HOME=home)
with mock_xonsh_env(built_ins.ENV):
exp = os.listdir(home)
exp = {os.path.join(home, p) for p in exp}
obs = set(pathsearch(regexsearch, '~/.*'))
assert exp == obs
@skip_if_on_windows
@pytest.mark.parametrize('xenv', [Env(HOME=HOME_PATH)])
def test_repath_backslash(xonsh_env):
exp = os.listdir(HOME_PATH)
exp = {p for p in exp if re.match(r'\w\w.*', p)}
exp = {os.path.join(HOME_PATH, p) for p in exp}
obs = set(pathsearch(regexsearch, r'~/\w\w.*'))
assert exp == obs
@pytest.mark.skipif(ON_WINDOWS, reason='Unix stuff')
def test_repath_home_var():
exp = os.path.expanduser('~')
built_ins.ENV = Env(HOME=exp)
with mock_xonsh_env(built_ins.ENV):
obs = pathsearch(regexsearch, '$HOME')
assert 1 == len(obs)
assert exp == obs[0]
@skip_if_on_windows
@pytest.mark.parametrize('xenv', [Env(HOME=os.path.expanduser('~'))])
def test_repath_HOME_PATH_itself(xonsh_env):
obs = pathsearch(regexsearch, '~')
assert 1 == len(obs)
assert exp == obs[0]
@pytest.mark.skipif(ON_WINDOWS, reason='Unix stuff')
def test_repath_home_var_brace():
exp = os.path.expanduser('~')
built_ins.ENV = Env(HOME=exp)
with mock_xonsh_env(built_ins.ENV):
obs = pathsearch(regexsearch, '${"HOME"}')
assert 1 == len(obs)
assert exp == obs[0]
def test_helper_int():
with mock_xonsh_env({}):
helper(int, 'int')
@skip_if_on_windows
@pytest.mark.parametrize('xenv', [Env(HOME=os.path.expanduser('~'))])
def test_repath_HOME_PATH_contents(xonsh_env):
exp = os.listdir(HOME_PATH)
exp = {os.path.join(HOME_PATH, p) for p in exp}
obs = set(pathsearch(regexsearch, '~/.*'))
assert exp == obs
def test_helper_helper():
with mock_xonsh_env({}):
helper(helper, 'helper')
def test_helper_env():
with mock_xonsh_env({}):
helper(Env, 'Env')
@skip_if_on_windows
@pytest.mark.parametrize('xenv', [Env(HOME=os.path.expanduser('~'))])
def test_repath_HOME_PATH_var(xonsh_env):
obs = pathsearch(regexsearch, '$HOME')
assert 1 == len(obs)
assert exp == obs[0]
def test_superhelper_int():
with mock_xonsh_env({}):
superhelper(int, 'int')
def test_superhelper_helper():
with mock_xonsh_env({}):
superhelper(helper, 'helper')
@skip_if_on_windows
@pytest.mark.parametrize('xenv', [Env(HOME=os.path.expanduser('~'))])
def test_repath_HOME_PATH_var_brace(xonsh_env):
obs = pathsearch(regexsearch, '${"HOME"}')
assert 1 == len(obs)
assert exp == obs[0]
def test_superhelper_env():
with mock_xonsh_env({}):
superhelper(Env, 'Env')
def test_helper_int(xonsh_env):
helper(int, 'int')
def test_helper_helper(xonsh_env):
helper(helper, 'helper')
def test_helper_env(xonsh_env):
helper(Env, 'Env')
def test_superhelper_int(xonsh_env):
superhelper(int, 'int')
def test_superhelper_helper(xonsh_env):
superhelper(helper, 'helper')
def test_superhelper_env(xonsh_env):
superhelper(Env, 'Env')
def test_ensure_list_of_strs():
cases = [(['yo'], 'yo'), (['yo'], ['yo']), (['42'], 42), (['42'], [42])]

View file

@ -572,7 +572,6 @@ def expand(path):
(b'~/../', '~/../'),
])
def test_env_path_getitem(inp, exp, xonsh_env):
# lambda to expand the expected paths
obs = EnvPath(inp)[0] # call to __getitem__
assert expand(exp) == obs