Mercurial > hg
changeset 21303:21a706020dd6
run-tests: move env into Test
Environment variables are an implementation detail of how tests are
executed. This patch moves environment variable logic into Test and
completely hides it from the outside.
With this patch, a Test can be executed with two lines: init + run().
Tests are still single-use and take a more arguments to the constructor
than likely necessary. These will get addressed in subsequent patches.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sat, 19 Apr 2014 13:26:12 -0700 |
parents | 9e5d8eaa4a20 |
children | e626a67da4ba |
files | tests/run-tests.py |
diffstat | 1 files changed, 4 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py Sat Apr 19 13:22:52 2014 -0700 +++ b/tests/run-tests.py Sat Apr 19 13:26:12 2014 -0700 @@ -557,7 +557,8 @@ self._setreplacements(count) - def run(self, env): + def run(self): + env = self._getenv() createhgrc(env['HGRCPATH'], self._options) try: @@ -587,7 +588,7 @@ self._replacements = r self._port = port - def getenv(self): + def _getenv(self): env = os.environ.copy() env['TESTTMP'] = self.testtmp env['HOME'] = self.testtmp @@ -1026,11 +1027,10 @@ os.mkdir(threadtmp) t = runner(testpath, options, threadtmp, count) - env = t.getenv() starttime = time.time() try: - ret, out = t.run(env) + ret, out = t.run() except KeyboardInterrupt: endtime = time.time() log('INTERRUPTED: %s (after %d seconds)' % (test, endtime - starttime))