tests: de-flake test-run-tests.t's "--jobs=2 --first" test
authorMartin von Zweigbergk <martinvonz@google.com>
Wed, 18 Oct 2017 16:28:18 -0700
changeset 34894 b63a7d839c33
parent 34893 068e0e531584
child 34895 7b857c5947ec
tests: de-flake test-run-tests.t's "--jobs=2 --first" test Once in a while, test-nothing.t finished before test-failure.t or test-failure-copy.t (I haven't checked which one actually gets run first). Since there already are two tests that will fail in the same way, just run those two instead so the diff will be reproducible and not timing-dependent. The test case was added in 9a20f53e436f (run-tests: handle --jobs and --first gracefully, 2014-10-09), and I have checked that backing that out results in two failures being printed. Note that the summary may still include multiple tests even if --first is given, it's just that the diff is only printed for the first failure. Differential Revision: https://phab.mercurial-scm.org/D1186
tests/test-run-tests.t
--- a/tests/test-run-tests.t	Wed Oct 18 18:30:02 2017 -0400
+++ b/tests/test-run-tests.t	Wed Oct 18 16:28:18 2017 -0700
@@ -609,10 +609,7 @@
   [1]
 
 failures in parallel with --first should only print one failure
-  >>> f = open('test-nothing.t', 'w')
-  >>> f.write('foo\n' * 1024) and None
-  >>> f.write('  $ sleep 1') and None
-  $ rt --jobs 2 --first
+  $ rt --jobs 2 --first test-failure*.t
   
   --- $TESTTMP/test-failure*.t (glob)
   +++ $TESTTMP/test-failure*.t.err (glob)
@@ -625,14 +622,14 @@
    pad pad pad pad............................................................
   
   Failed test-failure*.t: output changed (glob)
-  Failed test-nothing.t: output changed
+  Failed test-failure*.t: output changed (glob)
   # Ran 2 tests, 0 skipped, 2 failed.
   python hash seed: * (glob)
   [1]
 
 
 (delete the duplicated test file)
-  $ rm test-failure-copy.t test-nothing.t
+  $ rm test-failure-copy.t
 
 
 Interactive run