# HG changeset patch # User Adam Simpkins # Date 2017-06-28 00:24:31 # Node ID fa9a90d5ad89d977d02c22387a23c5856526940d # Parent 8b20338b989e35e0eacfe209e96e3bad6ea2baa8 tests: save the original PATH and PYTHONPATH variables When running the tests, define ORIG_PATH and ORIG_PYTHONPATH environment variables that contain the original contents of PATH and PYTHONPATH, before they were modified by run-tests.py This will make it possible for tests to refer to the original contents of these variables if necessary. In particular, this is necessary for invoking the correct version of hg for examining the local repository (the mercurial repository itself, not the temporary test repositories). Various tests examine the local repository to check the file lists and contents of commit messages. diff --git a/tests/run-tests.py b/tests/run-tests.py --- a/tests/run-tests.py +++ b/tests/run-tests.py @@ -2274,6 +2274,9 @@ class TestRunner(object): sepb = _bytespath(os.pathsep) else: sepb = os.pathsep + # save the original path, for tests that need to invoke the + # system python + osenvironb[b"ORIG_PATH"] = osenvironb[b"PATH"] path = [self._bindir, runtestdir] + osenvironb[b"PATH"].split(sepb) if os.path.islink(__file__): # test helper will likely be at the end of the symlink @@ -2299,6 +2302,7 @@ class TestRunner(object): # are in /opt/subversion.) oldpypath = osenvironb.get(IMPL_PATH) if oldpypath: + osenvironb['ORIG_' + IMPL_PATH] = oldpypath pypath.append(oldpypath) osenvironb[IMPL_PATH] = sepb.join(pypath)