Mercurial > treepkg
diff test/test_run.py @ 124:e08b4b09d35f
New parameter treepkg.run.call: extra_env for additional environment
variables passed to the subprocess. Also add a test case.
author | Bernhard Herzog <bh@intevation.de> |
---|---|
date | Thu, 22 May 2008 12:44:43 +0000 |
parents | 37aadd33ffab |
children | a68a4e22549c |
line wrap: on
line diff
--- a/test/test_run.py Thu May 22 10:40:08 2008 +0000 +++ b/test/test_run.py Thu May 22 12:44:43 2008 +0000 @@ -28,3 +28,23 @@ self.assertEquals(exc.returncode, 1) else: self.fail("call did not raise an exception") + + def test_call_extra_env(self): + """Test call with the extra_env parameter""" + subprocess_cmd = [sys.executable, "-c", + "import sys, os;" + "value = os.environ.get('TREEPKG_TEST');" + "sys.exit(int(value != 'xyzzy'))" + ] + # sanity check that the extra environment variable we use for + # the test is not set yet + self.assertRaises(SubprocessError, call, subprocess_cmd) + + # the actual test + try: + call(subprocess_cmd, extra_env=dict(TREEPKG_TEST="xyzzy")) + except SubprocessError, exc: + self.fail("the extra_env variables were not set properly") + else: + # test OK + pass