summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_config.py65
1 files changed, 53 insertions, 12 deletions
diff --git a/tests/test_config.py b/tests/test_config.py
index a9a97b8..462e33c 100644
--- a/tests/test_config.py
+++ b/tests/test_config.py
@@ -283,18 +283,9 @@ class TestIniParserAgainstCommandsKey:
commands =
ls {env:TEST}
""")
- reader = SectionReader("testenv:py27", config._cfg)
- x = reader.getargvlist("commands")
- assert x == [
- "ls testvalue".split()
- ]
- assert x != [
- "ls {env:TEST}".split()
- ]
- y = reader.getargvlist("setenv")
- assert y == [
- "TEST=testvalue".split()
- ]
+ envconfig = config.envconfigs["py27"]
+ assert envconfig.commands == [["ls", "testvalue"]]
+ assert envconfig.setenv["TEST"] == "testvalue"
class TestIniParser:
@@ -1618,6 +1609,56 @@ class TestHashseedOption:
self._check_hashseed(envconfigs["hash2"], '123456789')
+class TestSetenv:
+ def test_getdict_lazy(self, tmpdir, newconfig):
+ config = newconfig("""
+ [testenv:X]
+ key0 =
+ key1 = {env:X}
+ key2 = {env:X:1}
+ """)
+ envconfig = config.envconfigs["X"]
+ val = envconfig._reader.getdict_lazy("key0")
+ assert val == {"key1": "{env:X}",
+ "key2": "{env:X:1}"}
+
+
+ def test_setenv_uses_os_environ(self, tmpdir, newconfig, monkeypatch):
+ monkeypatch.setenv("X", "1")
+ config = newconfig("""
+ [testenv:env1]
+ setenv =
+ X = {env:X}
+ """)
+ assert config.envconfigs["env1"].setenv["X"] == "1"
+
+ def test_setenv_default_os_environ(self, tmpdir, newconfig, monkeypatch):
+ monkeypatch.delenv("X", raising=False)
+ config = newconfig("""
+ [testenv:env1]
+ setenv =
+ X = {env:X:2}
+ """)
+ assert config.envconfigs["env1"].setenv["X"] == "2"
+
+ def test_setenv_uses_other_setenv(self, tmpdir, newconfig):
+ config = newconfig("""
+ [testenv:env1]
+ setenv =
+ Y = 5
+ X = {env:Y}
+ """)
+ assert config.envconfigs["env1"].setenv["X"] == "5"
+
+ def test_setenv_recursive_direct(self, tmpdir, newconfig):
+ config = newconfig("""
+ [testenv:env1]
+ setenv =
+ X = {env:X:3}
+ """)
+ assert config.envconfigs["env1"].setenv["X"] == "3"
+
+
class TestIndexServer:
def test_indexserver(self, tmpdir, newconfig):
config = newconfig("""