diff options
author | Ronald Oussoren <ronaldoussoren@mac.com> | 2009-02-12 15:55:38 (GMT) |
---|---|---|
committer | Ronald Oussoren <ronaldoussoren@mac.com> | 2009-02-12 15:55:38 (GMT) |
commit | 3e264e13ede4c3c067dd30052aa0f1e7298342d2 (patch) | |
tree | 4b47a8cb5e4227ab41fc91d2a1f89d373ca1bc88 /Lib/test | |
parent | 50987bce063bd8ae183a327b0de4c402e4a1a774 (diff) | |
download | cpython-3e264e13ede4c3c067dd30052aa0f1e7298342d2.zip cpython-3e264e13ede4c3c067dd30052aa0f1e7298342d2.tar.gz cpython-3e264e13ede4c3c067dd30052aa0f1e7298342d2.tar.bz2 |
This fixes issue5143 and includes a test.
Issue5143 notes that getpath.c and main.c pass a 'char*' where
a 'wchar_t*' is expected on OSX.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_osx_env.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Lib/test/test_osx_env.py b/Lib/test/test_osx_env.py new file mode 100644 index 0000000..5b3f3e1 --- /dev/null +++ b/Lib/test/test_osx_env.py @@ -0,0 +1,34 @@ +""" +Test suite for OS X interpreter environment variables. +""" + +from test.support import EnvironmentVarGuard, run_unittest +import subprocess +import sys +import unittest + +class OSXEnvironmentVariableTestCase(unittest.TestCase): + def _check_sys(self, ev, cond, sv, val = '/some/path/to/python'): + with EnvironmentVarGuard() as evg: + subpc = [str(sys.executable), '-c', + 'import sys; sys.exit(2 if "%s" %s %s else 3)' % (val, cond, sv)] + # ensure environment variable does not exist + evg.unset(ev) + # test that test on sys.xxx normally fails + rc = subprocess.call(subpc) + self.assertEqual(rc, 3, "expected %s not %s %s" % (ev, cond, sv)) + # set environ variable + evg.set(ev, val) + # test that sys.xxx has been influenced by the environ value + rc = subprocess.call(subpc) + self.assertEqual(rc, 2, "expected %s %s %s" % (ev, cond, sv)) + + def test_pythonexecutable_sets_sys_executable(self): + self._check_sys('PYTHONEXECUTABLE', '==', 'sys.executable') + +def test_main(): + if sys.platform == 'darwin': + run_unittest(OSXEnvironmentVariableTestCase) + +if __name__ == "__main__": + test_main() |