Show More
@@ -1684,7 +1684,7 b' class TestSuite(unittest.TestSuite):' | |||
|
1684 | 1684 | def get(): |
|
1685 | 1685 | num_tests[0] += 1 |
|
1686 | 1686 | if getattr(test, 'should_reload', False): |
|
1687 |
return self._loadtest(test |
|
|
1687 | return self._loadtest(test, num_tests[0]) | |
|
1688 | 1688 | return test |
|
1689 | 1689 | if not os.path.exists(test.path): |
|
1690 | 1690 | result.addSkip(test, "Doesn't exist") |
@@ -1782,7 +1782,7 b' class TestSuite(unittest.TestSuite):' | |||
|
1782 | 1782 | if getattr(test, 'should_reload', False): |
|
1783 | 1783 | num_tests[0] += 1 |
|
1784 | 1784 | tests.append( |
|
1785 |
self._loadtest(test |
|
|
1785 | self._loadtest(test, num_tests[0])) | |
|
1786 | 1786 | else: |
|
1787 | 1787 | tests.append(test) |
|
1788 | 1788 | if self._jobs == 1: |
@@ -2095,6 +2095,7 b' class TestRunner(object):' | |||
|
2095 | 2095 | perf = {} |
|
2096 | 2096 | def sortkey(f): |
|
2097 | 2097 | # run largest tests first, as they tend to take the longest |
|
2098 | f = f['path'] | |
|
2098 | 2099 | try: |
|
2099 | 2100 | return perf[f] |
|
2100 | 2101 | except KeyError: |
@@ -2262,11 +2263,16 b' class TestRunner(object):' | |||
|
2262 | 2263 | else: |
|
2263 | 2264 | args = os.listdir(b'.') |
|
2264 | 2265 | |
|
2265 | return [t for t in args | |
|
2266 | return [{'path': t} for t in args | |
|
2266 | 2267 | if os.path.basename(t).startswith(b'test-') |
|
2267 | 2268 | and (t.endswith(b'.py') or t.endswith(b'.t'))] |
|
2268 | 2269 | |
|
2269 | 2270 | def _runtests(self, tests): |
|
2271 | def _reloadtest(test, i): | |
|
2272 | # convert a test back to its description dict | |
|
2273 | desc = {'path': test.path} | |
|
2274 | return self._gettest(desc, i) | |
|
2275 | ||
|
2270 | 2276 | try: |
|
2271 | 2277 | if self._installdir: |
|
2272 | 2278 | self._installhg() |
@@ -2280,7 +2286,7 b' class TestRunner(object):' | |||
|
2280 | 2286 | if self.options.restart: |
|
2281 | 2287 | orig = list(tests) |
|
2282 | 2288 | while tests: |
|
2283 | if os.path.exists(tests[0] + ".err"): | |
|
2289 | if os.path.exists(tests[0]['path'] + ".err"): | |
|
2284 | 2290 | break |
|
2285 | 2291 | tests.pop(0) |
|
2286 | 2292 | if not tests: |
@@ -2304,7 +2310,7 b' class TestRunner(object):' | |||
|
2304 | 2310 | loop=self.options.loop, |
|
2305 | 2311 | runs_per_test=self.options.runs_per_test, |
|
2306 | 2312 | showchannels=self.options.showchannels, |
|
2307 |
tests=tests, loadtest= |
|
|
2313 | tests=tests, loadtest=_reloadtest) | |
|
2308 | 2314 | verbosity = 1 |
|
2309 | 2315 | if self.options.verbose: |
|
2310 | 2316 | verbosity = 2 |
@@ -2351,7 +2357,8 b' class TestRunner(object):' | |||
|
2351 | 2357 | Returns a Test instance. The Test may not be runnable if it doesn't |
|
2352 | 2358 | map to a known type. |
|
2353 | 2359 | """ |
|
2354 | lctest = test.lower() | |
|
2360 | path = test['path'] | |
|
2361 | lctest = path.lower() | |
|
2355 | 2362 | testcls = Test |
|
2356 | 2363 | |
|
2357 | 2364 | for ext, cls in self.TESTTYPES: |
@@ -2359,7 +2366,7 b' class TestRunner(object):' | |||
|
2359 | 2366 | testcls = cls |
|
2360 | 2367 | break |
|
2361 | 2368 | |
|
2362 |
refpath = os.path.join(self._testdir, |
|
|
2369 | refpath = os.path.join(self._testdir, path) | |
|
2363 | 2370 | tmpdir = os.path.join(self._hgtmp, b'child%d' % count) |
|
2364 | 2371 | |
|
2365 | 2372 | t = testcls(refpath, tmpdir, |
General Comments 0
You need to be logged in to leave comments.
Login now