Mercurial > hg
changeset 38553:3fb46734508d
tests: add test showing puzzling test output with (glob) lines
When using multiple (glob) lines, the test runner often moves the
lines around in the output on failure. I have run into this problem
many times. The added test shows one example of this. Note that it
doesn't show the mismatching lines and instead shows diff hunks that
appear to replace a literal by a glob, and other hunks that should
clearly match.
Differential Revision: https://phab.mercurial-scm.org/D3880
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Fri, 29 Jun 2018 11:29:03 -0700 |
parents | 5a20b6090a6e |
children | f83600efa1ca |
files | tests/test-run-tests.t |
diffstat | 1 files changed, 47 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-run-tests.t Tue Jul 03 15:30:22 2018 -0700 +++ b/tests/test-run-tests.t Fri Jun 29 11:29:03 2018 -0700 @@ -120,6 +120,52 @@ python hash seed: * (glob) [1] +test how multiple globs gets matched with lines in output + $ cat > test-failure-globs.t <<EOF + > $ echo "context"; echo "context"; \ + > echo "key: 1"; echo "value: not a"; \ + > echo "key: 2"; echo "value: not b"; \ + > echo "key: 3"; echo "value: c"; \ + > echo "key: 4"; echo "value: d" + > context + > context + > key: 1 + > value: a + > key: 2 + > value: b + > key: 3 + > value: * (glob) + > key: 4 + > value: * (glob) + > EOF + $ rt test-failure-globs.t + + --- $TESTTMP/test-failure-globs.t + +++ $TESTTMP/test-failure-globs.t.err + @@ -2,10 +2,10 @@ + context + context + key: 1 + - value: a + + value: * (glob) + key: 2 + - value: b + + value: * (glob) + key: 3 + - value: * (glob) + + value: c + key: 4 + - value: * (glob) + + value: d + + ERROR: test-failure-globs.t output changed + ! + Failed test-failure-globs.t: output changed + # Ran 1 tests, 0 skipped, 1 failed. + python hash seed: * (glob) + [1] + $ rm test-failure-globs.t + test diff colorisation #if no-windows pygments @@ -374,6 +420,7 @@ $ cat .testtimes test-empty.t * (glob) + test-failure-globs.t * (glob) test-failure-unicode.t * (glob) test-failure.t * (glob) test-success.t * (glob)