tests/test-run-tests.t
author Gregory Szorc <gregory.szorc@gmail.com>
Sat, 13 Oct 2018 12:11:45 +0200
changeset 40244 1039404c5e1d
parent 39707 5abc47d4ca6b
child 40245 e7e70c033783
permissions -rw-r--r--
run-tests: print number of tests and parallel process count This seems like a useful output message to have. I also sneak in a change to lower the parallel process count if it is larger than the number of tests, as that makes no sense and output saying we're running more tests in parallel than there exists tests would be wonky. Differential Revision: https://phab.mercurial-scm.org/D5070
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21732
b6192ea7f7fd test: introduce test-run-tests.t
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     1
This file tests the behavior of run-tests.py itself.
b6192ea7f7fd test: introduce test-run-tests.t
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     2
24960
65e8dac7b016 test-run-test: unset run-test specific environment variables
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
     3
Avoid interference from actual test env:
65e8dac7b016 test-run-test: unset run-test specific environment variables
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
     4
29220
054bcdad6042 tests: refactor run-tests helpers
timeless <timeless@mozdev.org>
parents: 29199
diff changeset
     5
  $ . "$TESTDIR/helper-runtests.sh"
24960
65e8dac7b016 test-run-test: unset run-test specific environment variables
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
     6
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
     7
Smoke test with install
21732
b6192ea7f7fd test: introduce test-run-tests.t
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     8
============
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38824
diff changeset
     9
  $ "$PYTHON" $TESTDIR/run-tests.py $HGTEST_RUN_TESTS_PURE -l
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
    10
  running 0 tests using 0 parallel processes 
21732
b6192ea7f7fd test: introduce test-run-tests.t
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    11
  
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
    12
  # Ran 0 tests, 0 skipped, 0 failed.
21734
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    13
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    14
Define a helper to avoid the install step
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    15
=============
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    16
  $ rt()
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    17
  > {
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38824
diff changeset
    18
  >     "$PYTHON" $TESTDIR/run-tests.py --with-hg=`which hg` "$@"
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    19
  > }
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    20
28037
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    21
error paths
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    22
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    23
#if symlink
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    24
  $ ln -s `which true` hg
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38824
diff changeset
    25
  $ "$PYTHON" $TESTDIR/run-tests.py --with-hg=./hg
28037
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    26
  warning: --with-hg should specify an hg script
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
    27
  running 0 tests using 0 parallel processes 
28037
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    28
  
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
    29
  # Ran 0 tests, 0 skipped, 0 failed.
28037
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    30
  $ rm hg
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    31
#endif
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    32
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    33
#if execbit
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    34
  $ touch hg
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38824
diff changeset
    35
  $ "$PYTHON" $TESTDIR/run-tests.py --with-hg=./hg
35187
b4b0aed7bfaf run-tests: convert to argparse
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35155
diff changeset
    36
  usage: run-tests.py [options] [tests]
28037
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    37
  run-tests.py: error: --with-hg must specify an executable hg script
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    38
  [2]
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    39
  $ rm hg
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    40
#endif
54c896f8bb79 run-tests: warn about symlinks to non hg scripts
timeless <timeless@mozdev.org>
parents: 27927
diff changeset
    41
31829
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    42
Features for testing optional lines
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    43
===================================
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    44
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    45
  $ cat > hghaveaddon.py <<EOF
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    46
  > import hghave
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    47
  > @hghave.check("custom", "custom hghave feature")
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    48
  > def has_custom():
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    49
  >     return True
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    50
  > @hghave.check("missing", "missing hghave feature")
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    51
  > def has_missing():
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    52
  >     return False
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    53
  > EOF
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    54
28812
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    55
an empty test
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    56
=======================
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    57
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    58
  $ touch test-empty.t
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    59
  $ rt
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
    60
  running 1 tests using 1 parallel processes 
28812
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    61
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
    62
  # Ran 1 tests, 0 skipped, 0 failed.
28812
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    63
  $ rm test-empty.t
f1de5a612a74 run-tests: handle empty tests
timeless <timeless@mozdev.org>
parents: 28701
diff changeset
    64
21734
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    65
a succesful test
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    66
=======================
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    67
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    68
  $ cat > test-success.t << EOF
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    69
  >   $ echo babar
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    70
  >   babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
    71
  >   $ echo xyzzy
31827
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
    72
  >   dont_print (?)
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
    73
  >   nothing[42]line (re) (?)
28701
3bce3d2fd727 run-tests: make _processoutput picky about optional globs
timeless <timeless@mozdev.org>
parents: 28619
diff changeset
    74
  >   never*happens (glob) (?)
31827
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
    75
  >   more_nothing (?)
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
    76
  >   xyzzy
25388
6025cac3d02f tests: add (?) flag for optional lines
Matt Mackall <mpm@selenic.com>
parents: 25098
diff changeset
    77
  >   nor this (?)
28317
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    78
  >   $ printf 'abc\ndef\nxyz\n'
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    79
  >   123 (?)
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    80
  >   abc
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    81
  >   def (?)
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    82
  >   456 (?)
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
    83
  >   xyz
31829
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    84
  >   $ printf 'zyx\nwvu\ntsr\n'
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    85
  >   abc (?)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    86
  >   zyx (custom !)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    87
  >   wvu
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    88
  >   no_print (no-custom !)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    89
  >   tsr (no-missing !)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
    90
  >   missing (missing !)
21734
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    91
  > EOF
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    92
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
    93
  $ rt
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
    94
  running 1 tests using 1 parallel processes 
21734
34e0bd895afc test-run-tests.t: test running a passing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21732
diff changeset
    95
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
    96
  # Ran 1 tests, 0 skipped, 0 failed.
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
    97
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
    98
failing test
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
    99
==================
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   100
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   101
test churn with globs
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   102
  $ cat > test-failure.t <<EOF
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   103
  >   $ echo "bar-baz"; echo "bar-bad"; echo foo
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   104
  >   bar*bad (glob)
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   105
  >   bar*baz (glob)
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   106
  >   | fo (re)
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   107
  > EOF
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   108
  $ rt test-failure.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   109
  running 1 tests using 1 parallel processes 
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   110
  
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   111
  --- $TESTTMP/test-failure.t
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   112
  +++ $TESTTMP/test-failure.t.err
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   113
  @@ -1,4 +1,4 @@
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   114
     $ echo "bar-baz"; echo "bar-bad"; echo foo
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   115
  +  bar*baz (glob)
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   116
     bar*bad (glob)
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   117
  -  bar*baz (glob)
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   118
  -  | fo (re)
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   119
  +  foo
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   120
  
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   121
  ERROR: test-failure.t output changed
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   122
  !
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   123
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   124
  # Ran 1 tests, 0 skipped, 1 failed.
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   125
  python hash seed: * (glob)
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   126
  [1]
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   127
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   128
test how multiple globs gets matched with lines in output
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   129
  $ cat > test-failure-globs.t <<EOF
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   130
  >   $ echo "context"; echo "context"; \
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   131
  >     echo "key: 1"; echo "value: not a"; \
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   132
  >     echo "key: 2"; echo "value: not b"; \
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   133
  >     echo "key: 3"; echo "value: c"; \
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   134
  >     echo "key: 4"; echo "value: d"
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   135
  >   context
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   136
  >   context
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   137
  >   key: 1
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   138
  >   value: a
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   139
  >   key: 2
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   140
  >   value: b
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   141
  >   key: 3
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   142
  >   value: * (glob)
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   143
  >   key: 4
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   144
  >   value: * (glob)
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   145
  > EOF
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   146
  $ rt test-failure-globs.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   147
  running 1 tests using 1 parallel processes 
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   148
  
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   149
  --- $TESTTMP/test-failure-globs.t
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   150
  +++ $TESTTMP/test-failure-globs.t.err
38554
f83600efa1ca tests: don't allow reodering of glob/re lines across non-glob/re lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38553
diff changeset
   151
  @@ -2,9 +2,9 @@
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   152
     context
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   153
     context
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   154
     key: 1
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   155
  -  value: a
38554
f83600efa1ca tests: don't allow reodering of glob/re lines across non-glob/re lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38553
diff changeset
   156
  +  value: not a
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   157
     key: 2
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   158
  -  value: b
38554
f83600efa1ca tests: don't allow reodering of glob/re lines across non-glob/re lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38553
diff changeset
   159
  +  value: not b
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   160
     key: 3
38554
f83600efa1ca tests: don't allow reodering of glob/re lines across non-glob/re lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38553
diff changeset
   161
     value: * (glob)
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   162
     key: 4
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   163
  
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   164
  ERROR: test-failure-globs.t output changed
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   165
  !
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   166
  Failed test-failure-globs.t: output changed
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   167
  # Ran 1 tests, 0 skipped, 1 failed.
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   168
  python hash seed: * (glob)
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   169
  [1]
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   170
  $ rm test-failure-globs.t
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   171
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   172
test diff colorisation
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   173
33552
754569f5e999 run-tests: make sure to check if pygments is installed before using it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 33500
diff changeset
   174
#if no-windows pygments
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   175
  $ rt test-failure.t --color always
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   176
  
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   177
  \x1b[38;5;124m--- $TESTTMP/test-failure.t\x1b[39m (esc)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   178
  \x1b[38;5;34m+++ $TESTTMP/test-failure.t.err\x1b[39m (esc)
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   179
  \x1b[38;5;90;01m@@ -1,4 +1,4 @@\x1b[39;00m (esc)
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   180
     $ echo "bar-baz"; echo "bar-bad"; echo foo
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   181
  \x1b[38;5;34m+  bar*baz (glob)\x1b[39m (esc)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   182
     bar*bad (glob)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   183
  \x1b[38;5;124m-  bar*baz (glob)\x1b[39m (esc)
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   184
  \x1b[38;5;124m-  | fo (re)\x1b[39m (esc)
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   185
  \x1b[38;5;34m+  foo\x1b[39m (esc)
34842
8bce3e51b101 run-tests: move newline out of colorized message
Martin von Zweigbergk <martinvonz@google.com>
parents: 34263
diff changeset
   186
  
33814
81b12f69ef5b run-tests: also color the summary messages (skipped, failed...)
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 33696
diff changeset
   187
  \x1b[38;5;88mERROR: \x1b[39m\x1b[38;5;9mtest-failure.t\x1b[39m\x1b[38;5;88m output changed\x1b[39m (esc)
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   188
  !
33814
81b12f69ef5b run-tests: also color the summary messages (skipped, failed...)
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 33696
diff changeset
   189
  \x1b[38;5;88mFailed \x1b[39m\x1b[38;5;9mtest-failure.t\x1b[39m\x1b[38;5;88m: output changed\x1b[39m (esc)
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   190
  # Ran 1 tests, 0 skipped, 1 failed.
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   191
  python hash seed: * (glob)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   192
  [1]
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   193
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   194
  $ rt test-failure.t 2> tmp.log
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   195
  [1]
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   196
  $ cat tmp.log
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   197
  
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   198
  --- $TESTTMP/test-failure.t
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   199
  +++ $TESTTMP/test-failure.t.err
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   200
  @@ -1,4 +1,4 @@
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   201
     $ echo "bar-baz"; echo "bar-bad"; echo foo
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   202
  +  bar*baz (glob)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   203
     bar*bad (glob)
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   204
  -  bar*baz (glob)
35155
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   205
  -  | fo (re)
6d5718e39657 run-tests: make "| foo (re)" not match everything
Martin von Zweigbergk <martinvonz@google.com>
parents: 35097
diff changeset
   206
  +  foo
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   207
  
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   208
  ERROR: test-failure.t output changed
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   209
  !
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   210
  Failed test-failure.t: output changed
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   211
  # Ran 1 tests, 0 skipped, 1 failed.
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   212
  python hash seed: * (glob)
33500
9c6e64911de0 run-tests: disable color on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33420
diff changeset
   213
#endif
33420
e80041832eec run-tests: add color to output if pygments is available
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32982
diff changeset
   214
33695
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   215
  $ cat > test-failure.t << EOF
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   216
  >   $ true
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   217
  >   should go away (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   218
  >   $ true
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   219
  >   should stay (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   220
  > 
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   221
  > Should remove first line, not second or third
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   222
  >   $ echo 'testing'
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   223
  >   baz*foo (glob) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   224
  >   foobar*foo (glob) (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   225
  >   te*ting (glob) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   226
  > 
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   227
  > Should keep first two lines, remove third and last
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   228
  >   $ echo 'testing'
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   229
  >   test.ng (re) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   230
  >   foo.ar (re) (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   231
  >   b.r (re) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   232
  >   missing (?)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   233
  >   awol (true !)
33696
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   234
  > 
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   235
  > The "missing" line should stay, even though awol is dropped
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   236
  >   $ echo 'testing'
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   237
  >   test.ng (re) (true !)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   238
  >   foo.ar (?)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   239
  >   awol
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   240
  >   missing (?)
33695
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   241
  > EOF
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   242
  $ rt test-failure.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   243
  running 1 tests using 1 parallel processes 
33695
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   244
  
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   245
  --- $TESTTMP/test-failure.t
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   246
  +++ $TESTTMP/test-failure.t.err
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   247
  @@ -1,11 +1,9 @@
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   248
     $ true
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   249
  -  should go away (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   250
     $ true
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   251
     should stay (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   252
   
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   253
   Should remove first line, not second or third
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   254
     $ echo 'testing'
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   255
  -  baz*foo (glob) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   256
     foobar*foo (glob) (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   257
     te*ting (glob) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   258
   
33696
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   259
     foo.ar (re) (false !)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   260
     missing (?)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   261
  @@ -13,13 +11,10 @@
33695
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   262
     $ echo 'testing'
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   263
     test.ng (re) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   264
     foo.ar (re) (false !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   265
  -  b.r (re) (true !)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   266
     missing (?)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   267
  -  awol (true !)
33696
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   268
   
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   269
   The "missing" line should stay, even though awol is dropped
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   270
     $ echo 'testing'
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   271
     test.ng (re) (true !)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   272
     foo.ar (?)
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   273
  -  awol
1fa6023240f4 run-tests: don't drop optional lines after a missing unconditional line
Matt Harbison <matt_harbison@yahoo.com>
parents: 33695
diff changeset
   274
     missing (?)
33695
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   275
  
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   276
  ERROR: test-failure.t output changed
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   277
  !
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   278
  Failed test-failure.t: output changed
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   279
  # Ran 1 tests, 0 skipped, 1 failed.
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   280
  python hash seed: * (glob)
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   281
  [1]
eeed23508383 run-tests: drop required (feature !) style lines when the output is missing
Matt Harbison <matt_harbison@yahoo.com>
parents: 33552
diff changeset
   282
28619
695c666f42ff tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org>
parents: 28616
diff changeset
   283
basic failing test
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   284
  $ cat > test-failure.t << EOF
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   285
  >   $ echo babar
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   286
  >   rataxes
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   287
  > This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   288
  > this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   289
  > pad pad pad pad............................................................
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   290
  > pad pad pad pad............................................................
31828
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   291
  > pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   292
  > pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   293
  > pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   294
  > pad pad pad pad............................................................
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   295
  > EOF
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   296
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   297
  >>> fh = open('test-failure-unicode.t', 'wb')
25054
af5a778f8e2e test-run-tests.t: work around file.write() returning an int
Augie Fackler <augie@google.com>
parents: 24990
diff changeset
   298
  >>> fh.write(u'  $ echo babar\u03b1\n'.encode('utf-8')) and None
af5a778f8e2e test-run-tests.t: work around file.write() returning an int
Augie Fackler <augie@google.com>
parents: 24990
diff changeset
   299
  >>> fh.write(u'  l\u03b5\u03b5t\n'.encode('utf-8')) and None
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   300
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   301
  $ rt
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   302
  running 3 tests using 1 parallel processes 
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   303
  
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   304
  --- $TESTTMP/test-failure.t
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   305
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   306
  @@ -1,5 +1,5 @@
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   307
     $ echo babar
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   308
  -  rataxes
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   309
  +  babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   310
   This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   311
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   312
   pad pad pad pad............................................................
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   313
  
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   314
  ERROR: test-failure.t output changed
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   315
  !.
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   316
  --- $TESTTMP/test-failure-unicode.t
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   317
  +++ $TESTTMP/test-failure-unicode.t.err
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   318
  @@ -1,2 +1,2 @@
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   319
     $ echo babar\xce\xb1 (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   320
  -  l\xce\xb5\xce\xb5t (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   321
  +  babar\xce\xb1 (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   322
  
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   323
  ERROR: test-failure-unicode.t output changed
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   324
  !
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   325
  Failed test-failure.t: output changed
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   326
  Failed test-failure-unicode.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   327
  # Ran 3 tests, 0 skipped, 2 failed.
21738
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   328
  python hash seed: * (glob)
7ec3b32b98bb test-run-tests.t: test running a failing test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21734
diff changeset
   329
  [1]
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   330
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   331
test --outputdir
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   332
  $ mkdir output
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   333
  $ rt --outputdir output
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   334
  running 3 tests using 1 parallel processes 
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   335
  
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   336
  --- $TESTTMP/test-failure.t
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   337
  +++ $TESTTMP/output/test-failure.t.err
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   338
  @@ -1,5 +1,5 @@
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   339
     $ echo babar
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   340
  -  rataxes
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   341
  +  babar
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   342
   This is a noop statement so that
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   343
   this test is still more bytes than success.
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   344
   pad pad pad pad............................................................
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   345
  
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   346
  ERROR: test-failure.t output changed
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   347
  !.
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   348
  --- $TESTTMP/test-failure-unicode.t
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   349
  +++ $TESTTMP/output/test-failure-unicode.t.err
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   350
  @@ -1,2 +1,2 @@
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   351
     $ echo babar\xce\xb1 (esc)
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   352
  -  l\xce\xb5\xce\xb5t (esc)
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   353
  +  babar\xce\xb1 (esc)
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   354
  
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   355
  ERROR: test-failure-unicode.t output changed
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   356
  !
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   357
  Failed test-failure.t: output changed
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   358
  Failed test-failure-unicode.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   359
  # Ran 3 tests, 0 skipped, 2 failed.
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   360
  python hash seed: * (glob)
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   361
  [1]
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   362
  $ ls -a output
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   363
  .
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   364
  ..
32717
e5680cb1414f run-tests: write test times to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32716
diff changeset
   365
  .testtimes
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   366
  test-failure-unicode.t.err
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   367
  test-failure.t.err
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   368
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   369
test --xunit support
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   370
  $ rt --xunit=xunit.xml
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   371
  running 3 tests using 1 parallel processes 
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   372
  
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   373
  --- $TESTTMP/test-failure.t
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   374
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   375
  @@ -1,5 +1,5 @@
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   376
     $ echo babar
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   377
  -  rataxes
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   378
  +  babar
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   379
   This is a noop statement so that
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   380
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   381
   pad pad pad pad............................................................
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   382
  
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   383
  ERROR: test-failure.t output changed
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   384
  !.
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   385
  --- $TESTTMP/test-failure-unicode.t
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   386
  +++ $TESTTMP/test-failure-unicode.t.err
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   387
  @@ -1,2 +1,2 @@
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   388
     $ echo babar\xce\xb1 (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   389
  -  l\xce\xb5\xce\xb5t (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   390
  +  babar\xce\xb1 (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   391
  
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   392
  ERROR: test-failure-unicode.t output changed
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   393
  !
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   394
  Failed test-failure.t: output changed
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   395
  Failed test-failure-unicode.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   396
  # Ran 3 tests, 0 skipped, 2 failed.
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   397
  python hash seed: * (glob)
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   398
  [1]
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   399
  $ cat xunit.xml
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   400
  <?xml version="1.0" encoding="utf-8"?>
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   401
  <testsuite errors="0" failures="2" name="run-tests" skipped="0" tests="3">
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   402
    <testcase name="test-success.t" time="*"/> (glob)
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   403
    <testcase name="test-failure-unicode.t" time="*"> (glob)
32714
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   404
      <failure message="output changed" type="output-mismatch">
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   405
  <![CDATA[--- $TESTTMP/test-failure-unicode.t
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   406
  +++ $TESTTMP/test-failure-unicode.t.err
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   407
  @@ -1,2 +1,2 @@
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   408
     $ echo babar\xce\xb1 (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   409
  -  l\xce\xb5\xce\xb5t (esc)
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   410
  +  babar\xce\xb1 (esc)
32714
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   411
  ]]>    </failure>
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   412
    </testcase>
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   413
    <testcase name="test-failure.t" time="*"> (glob)
32714
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   414
      <failure message="output changed" type="output-mismatch">
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   415
  <![CDATA[--- $TESTTMP/test-failure.t
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   416
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   417
  @@ -1,5 +1,5 @@
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   418
     $ echo babar
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   419
  -  rataxes
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   420
  +  babar
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   421
   This is a noop statement so that
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   422
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   423
   pad pad pad pad............................................................
32714
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   424
  ]]>    </failure>
ef8d24539612 run-tests: wrap failures in an XUnit 'failure' element
Siddharth Agarwal <sid0@fb.com>
parents: 32704
diff changeset
   425
    </testcase>
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
   426
  </testsuite>
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   427
29280
6c97b9739f9d tests: add run-test .testtimes basic testing
timeless <timeless@mozdev.org>
parents: 29221
diff changeset
   428
  $ cat .testtimes
35855
69d7fcd91696 testrunner: fix updating of .testtimes file
Martin von Zweigbergk <martinvonz@google.com>
parents: 35536
diff changeset
   429
  test-empty.t * (glob)
38553
3fb46734508d tests: add test showing puzzling test output with (glob) lines
Martin von Zweigbergk <martinvonz@google.com>
parents: 38290
diff changeset
   430
  test-failure-globs.t * (glob)
29280
6c97b9739f9d tests: add run-test .testtimes basic testing
timeless <timeless@mozdev.org>
parents: 29221
diff changeset
   431
  test-failure-unicode.t * (glob)
6c97b9739f9d tests: add run-test .testtimes basic testing
timeless <timeless@mozdev.org>
parents: 29221
diff changeset
   432
  test-failure.t * (glob)
6c97b9739f9d tests: add run-test .testtimes basic testing
timeless <timeless@mozdev.org>
parents: 29221
diff changeset
   433
  test-success.t * (glob)
32704
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   434
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   435
  $ rt --list-tests
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   436
  test-failure-unicode.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   437
  test-failure.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   438
  test-success.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   439
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   440
  $ rt --list-tests --json
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   441
  test-failure-unicode.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   442
  test-failure.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   443
  test-success.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   444
  $ cat report.json
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   445
  testreport ={
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   446
      "test-failure-unicode.t": {
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   447
          "result": "success"
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   448
      },
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   449
      "test-failure.t": {
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   450
          "result": "success"
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   451
      },
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   452
      "test-success.t": {
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   453
          "result": "success"
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   454
      }
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   455
  } (no-eol)
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   456
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   457
  $ rt --list-tests --xunit=xunit.xml
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   458
  test-failure-unicode.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   459
  test-failure.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   460
  test-success.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   461
  $ cat xunit.xml
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   462
  <?xml version="1.0" encoding="utf-8"?>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   463
  <testsuite errors="0" failures="0" name="run-tests" skipped="0" tests="0">
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   464
    <testcase name="test-failure-unicode.t"/>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   465
    <testcase name="test-failure.t"/>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   466
    <testcase name="test-success.t"/>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   467
  </testsuite>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   468
32718
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
   469
  $ rt --list-tests test-failure* --json --xunit=xunit.xml --outputdir output
32704
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   470
  test-failure-unicode.t
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   471
  test-failure.t
32718
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
   472
  $ cat output/report.json
32704
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   473
  testreport ={
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   474
      "test-failure-unicode.t": {
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   475
          "result": "success"
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   476
      },
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   477
      "test-failure.t": {
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   478
          "result": "success"
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   479
      }
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   480
  } (no-eol)
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   481
  $ cat xunit.xml
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   482
  <?xml version="1.0" encoding="utf-8"?>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   483
  <testsuite errors="0" failures="0" name="run-tests" skipped="0" tests="0">
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   484
    <testcase name="test-failure-unicode.t"/>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   485
    <testcase name="test-failure.t"/>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   486
  </testsuite>
1270b00a385d run-tests: add a way to list tests, with JSON and XUnit support
Siddharth Agarwal <sid0@fb.com>
parents: 32622
diff changeset
   487
24500
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   488
  $ rm test-failure-unicode.t
7b0a20cd8c95 run-tests: explicitly handle unicode when writing xunit file
Gregory Szorc <gregory.szorc@gmail.com>
parents: 23935
diff changeset
   489
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   490
test for --retest
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   491
====================
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   492
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   493
  $ rt --retest
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   494
  running 2 tests using 1 parallel processes 
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   495
  
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   496
  --- $TESTTMP/test-failure.t
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   497
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   498
  @@ -1,5 +1,5 @@
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   499
     $ echo babar
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   500
  -  rataxes
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   501
  +  babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   502
   This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   503
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   504
   pad pad pad pad............................................................
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   505
  
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   506
  ERROR: test-failure.t output changed
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   507
  !
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   508
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   509
  # Ran 2 tests, 1 skipped, 1 failed.
21741
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   510
  python hash seed: * (glob)
02cd29156d5d test-run-tests.t: tests the --retest option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21738
diff changeset
   511
  [1]
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   512
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   513
--retest works with --outputdir
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   514
  $ rm -r output
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   515
  $ mkdir output
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   516
  $ mv test-failure.t.err output
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   517
  $ rt --retest --outputdir output
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   518
  running 2 tests using 1 parallel processes 
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   519
  
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   520
  --- $TESTTMP/test-failure.t
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   521
  +++ $TESTTMP/output/test-failure.t.err
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   522
  @@ -1,5 +1,5 @@
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   523
     $ echo babar
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   524
  -  rataxes
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   525
  +  babar
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   526
   This is a noop statement so that
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   527
   this test is still more bytes than success.
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   528
   pad pad pad pad............................................................
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   529
  
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   530
  ERROR: test-failure.t output changed
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   531
  !
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   532
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   533
  # Ran 2 tests, 1 skipped, 1 failed.
32716
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   534
  python hash seed: * (glob)
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   535
  [1]
2146f01a2577 run-tests: allow specifying an output dir to write .errs to
Siddharth Agarwal <sid0@fb.com>
parents: 32715
diff changeset
   536
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   537
Selecting Tests To Run
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   538
======================
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   539
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   540
successful
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   541
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   542
  $ rt test-success.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   543
  running 1 tests using 1 parallel processes 
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   544
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   545
  # Ran 1 tests, 0 skipped, 0 failed.
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   546
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   547
success w/ keyword
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   548
  $ rt -k xyzzy
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   549
  running 2 tests using 1 parallel processes 
22107
3b5cf39ffcc4 run-tests: don't show 'i' for tests that don't match a keyword
Matt Mackall <mpm@selenic.com>
parents: 22045
diff changeset
   550
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   551
  # Ran 2 tests, 1 skipped, 0 failed.
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   552
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   553
failed
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   554
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   555
  $ rt test-failure.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   556
  running 1 tests using 1 parallel processes 
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   557
  
23348
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   558
  --- $TESTTMP/test-failure.t
bbe56e07e07a tests: fix globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 23245
diff changeset
   559
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   560
  @@ -1,5 +1,5 @@
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   561
     $ echo babar
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   562
  -  rataxes
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   563
  +  babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   564
   This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   565
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   566
   pad pad pad pad............................................................
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   567
  
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   568
  ERROR: test-failure.t output changed
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   569
  !
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   570
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   571
  # Ran 1 tests, 0 skipped, 1 failed.
21742
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   572
  python hash seed: * (glob)
66f91859822b test-run-tests.t: test selection of testfile from the command line
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21741
diff changeset
   573
  [1]
21743
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   574
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   575
failure w/ keyword
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   576
  $ rt -k rataxes
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   577
  running 2 tests using 1 parallel processes 
22107
3b5cf39ffcc4 run-tests: don't show 'i' for tests that don't match a keyword
Matt Mackall <mpm@selenic.com>
parents: 22045
diff changeset
   578
  
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   579
  --- $TESTTMP/test-failure.t
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   580
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   581
  @@ -1,5 +1,5 @@
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   582
     $ echo babar
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   583
  -  rataxes
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   584
  +  babar
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   585
   This is a noop statement so that
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   586
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   587
   pad pad pad pad............................................................
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   588
  
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   589
  ERROR: test-failure.t output changed
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   590
  !
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   591
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   592
  # Ran 2 tests, 1 skipped, 1 failed.
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   593
  python hash seed: * (glob)
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   594
  [1]
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
   595
22840
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   596
Verify that when a process fails to start we show a useful message
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   597
==================================================================
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   598
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   599
  $ cat > test-serve-fail.t <<EOF
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   600
  >   $ echo 'abort: child process failed to start blah'
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   601
  > EOF
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   602
  $ rt test-serve-fail.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   603
  running 1 tests using 1 parallel processes 
36461
51a9f0246931 run-tests: resume raising an exception when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 36438
diff changeset
   604
  
36438
93228b2a1fc0 run-tests: don't mask errors when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 35855
diff changeset
   605
  --- $TESTTMP/test-serve-fail.t
93228b2a1fc0 run-tests: don't mask errors when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 35855
diff changeset
   606
  +++ $TESTTMP/test-serve-fail.t.err
93228b2a1fc0 run-tests: don't mask errors when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 35855
diff changeset
   607
  @@ -1* +1,2 @@ (glob)
93228b2a1fc0 run-tests: don't mask errors when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 35855
diff changeset
   608
     $ echo 'abort: child process failed to start blah'
93228b2a1fc0 run-tests: don't mask errors when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 35855
diff changeset
   609
  +  abort: child process failed to start blah
22840
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   610
  
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   611
  ERROR: test-serve-fail.t output changed
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   612
  !
36461
51a9f0246931 run-tests: resume raising an exception when a server fails to start
Matt Harbison <matt_harbison@yahoo.com>
parents: 36438
diff changeset
   613
  Failed test-serve-fail.t: server failed to start (HGPORT=*) (glob)
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   614
  # Ran 1 tests, 0 skipped, 1 failed.
22840
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   615
  python hash seed: * (glob)
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   616
  [1]
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   617
  $ rm test-serve-fail.t
ba5c635921e1 test-run-tests: add a test for detection of failure to start a server
Augie Fackler <raf@durin42.com>
parents: 22838
diff changeset
   618
27602
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   619
Verify that we can try other ports
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   620
===================================
37434
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   621
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   622
Extensions aren't inherited by the invoked run-tests.py. An extension
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   623
introducing a repository requirement could cause this to fail. So we force
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   624
HGRCPATH to get a clean environment.
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   625
3fbd8b862d66 tests: work around potential repo incompatibility
Gregory Szorc <gregory.szorc@gmail.com>
parents: 36677
diff changeset
   626
  $ HGRCPATH= hg init inuse
27602
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   627
  $ hg serve -R inuse -p $HGPORT -d --pid-file=blocks.pid
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   628
  $ cat blocks.pid >> $DAEMON_PIDS
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   629
  $ cat > test-serve-inuse.t <<EOF
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   630
  >   $ hg serve -R `pwd`/inuse -p \$HGPORT -d --pid-file=hg.pid
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   631
  >   $ cat hg.pid >> \$DAEMON_PIDS
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   632
  > EOF
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   633
  $ rt test-serve-inuse.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   634
  running 1 tests using 1 parallel processes 
27602
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   635
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   636
  # Ran 1 tests, 0 skipped, 0 failed.
27602
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   637
  $ rm test-serve-inuse.t
29221
73f58eb14684 test-run-tests: clean up inuse server eagerly
timeless <timeless@mozdev.org>
parents: 29220
diff changeset
   638
  $ killdaemons.py $DAEMON_PIDS
27602
67aa88e00fc7 run-tests: fix get port to try differing ports
timeless <timeless@mozdev.org>
parents: 27567
diff changeset
   639
21743
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   640
Running In Debug Mode
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   641
======================
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   642
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   643
  $ rt --debug 2>&1 | grep -v pwd
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   644
  running 2 tests using 1 parallel processes 
23676
e8b09f920fe6 tests: adapt glob pattern to fix test with NetBSD's sh(1) (issue4484)
Thomas Klausner <tk@giga.or.at>
parents: 23348
diff changeset
   645
  + echo *SALT* 0 0 (glob)
e8b09f920fe6 tests: adapt glob pattern to fix test with NetBSD's sh(1) (issue4484)
Thomas Klausner <tk@giga.or.at>
parents: 23348
diff changeset
   646
  *SALT* 0 0 (glob)
21743
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   647
  + echo babar
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   648
  babar
31828
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   649
  + echo *SALT* 10 0 (glob)
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   650
  *SALT* 10 0 (glob)
27509
6ff90d618d72 test-run-tests: glob away a --debug run difference on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 27395
diff changeset
   651
  *+ echo *SALT* 0 0 (glob)
23676
e8b09f920fe6 tests: adapt glob pattern to fix test with NetBSD's sh(1) (issue4484)
Thomas Klausner <tk@giga.or.at>
parents: 23348
diff changeset
   652
  *SALT* 0 0 (glob)
21743
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   653
  + echo babar
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   654
  babar
23676
e8b09f920fe6 tests: adapt glob pattern to fix test with NetBSD's sh(1) (issue4484)
Thomas Klausner <tk@giga.or.at>
parents: 23348
diff changeset
   655
  + echo *SALT* 2 0 (glob)
e8b09f920fe6 tests: adapt glob pattern to fix test with NetBSD's sh(1) (issue4484)
Thomas Klausner <tk@giga.or.at>
parents: 23348
diff changeset
   656
  *SALT* 2 0 (glob)
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   657
  + echo xyzzy
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   658
  xyzzy
31827
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
   659
  + echo *SALT* 9 0 (glob)
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
   660
  *SALT* 9 0 (glob)
28317
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
   661
  + printf *abc\ndef\nxyz\n* (glob)
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
   662
  abc
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
   663
  def
8de70574be2c run-tests: defer leftover (?) cleanup until after all output is exhausted
Matt Harbison <matt_harbison@yahoo.com>
parents: 28316
diff changeset
   664
  xyz
31827
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
   665
  + echo *SALT* 15 0 (glob)
220d4bffd23e run-tests: prevent a (glob) declaration from reordering (?) lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 31673
diff changeset
   666
  *SALT* 15 0 (glob)
31829
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   667
  + printf *zyx\nwvu\ntsr\n* (glob)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   668
  zyx
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   669
  wvu
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   670
  tsr
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   671
  + echo *SALT* 22 0 (glob)
4eec2f04a672 run-tests: support per-line conditional output in tests
Matt Harbison <matt_harbison@yahoo.com>
parents: 31828
diff changeset
   672
  *SALT* 22 0 (glob)
21743
d72bea858cbd test-run-tests.t: test --debug option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21742
diff changeset
   673
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   674
  # Ran 2 tests, 0 skipped, 0 failed.
21744
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   675
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   676
Parallel runs
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   677
==============
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   678
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   679
(duplicate the failing test to get predictable output)
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   680
  $ cp test-failure.t test-failure-copy.t
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   681
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   682
  $ rt --jobs 2 test-failure*.t -n
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   683
  running 2 tests using 2 parallel processes 
23107
5459b30aa498 tests: silence output race in test-run-tests.t
Matt Mackall <mpm@selenic.com>
parents: 22840
diff changeset
   684
  !!
21744
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   685
  Failed test-failure*.t: output changed (glob)
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   686
  Failed test-failure*.t: output changed (glob)
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   687
  # Ran 2 tests, 0 skipped, 2 failed.
21744
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   688
  python hash seed: * (glob)
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   689
  [1]
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   690
22838
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   691
failures in parallel with --first should only print one failure
34894
b63a7d839c33 tests: de-flake test-run-tests.t's "--jobs=2 --first" test
Martin von Zweigbergk <martinvonz@google.com>
parents: 34842
diff changeset
   692
  $ rt --jobs 2 --first test-failure*.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   693
  running 2 tests using 2 parallel processes 
22838
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   694
  
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   695
  --- $TESTTMP/test-failure*.t (glob)
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   696
  +++ $TESTTMP/test-failure*.t.err (glob)
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   697
  @@ -1,5 +1,5 @@
22838
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   698
     $ echo babar
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   699
  -  rataxes
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   700
  +  babar
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   701
   This is a noop statement so that
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   702
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   703
   pad pad pad pad............................................................
22838
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   704
  
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   705
  Failed test-failure*.t: output changed (glob)
34894
b63a7d839c33 tests: de-flake test-run-tests.t's "--jobs=2 --first" test
Martin von Zweigbergk <martinvonz@google.com>
parents: 34842
diff changeset
   706
  Failed test-failure*.t: output changed (glob)
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   707
  # Ran 2 tests, 0 skipped, 2 failed.
22838
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   708
  python hash seed: * (glob)
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   709
  [1]
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   710
9a20f53e436f run-tests: handle --jobs and --first gracefully
Augie Fackler <raf@durin42.com>
parents: 22579
diff changeset
   711
21744
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   712
(delete the duplicated test file)
34894
b63a7d839c33 tests: de-flake test-run-tests.t's "--jobs=2 --first" test
Martin von Zweigbergk <martinvonz@google.com>
parents: 34842
diff changeset
   713
  $ rm test-failure-copy.t
21744
395e29928db2 test-run-tests.t: tests --jobs option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21743
diff changeset
   714
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   715
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   716
Interactive run
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   717
===============
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   718
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   719
(backup the failing test)
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   720
  $ cp test-failure.t backup
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   721
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   722
Refuse the fix
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   723
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   724
  $ echo 'n' | rt -i
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   725
  running 2 tests using 1 parallel processes 
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   726
  
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   727
  --- $TESTTMP/test-failure.t
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   728
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   729
  @@ -1,5 +1,5 @@
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   730
     $ echo babar
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   731
  -  rataxes
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   732
  +  babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   733
   This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   734
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   735
   pad pad pad pad............................................................
21763
84cd5ee787ed run-tests: hold iolock across diff/prompt when interactive
Matt Mackall <mpm@selenic.com>
parents: 21756
diff changeset
   736
  Accept this change? [n] 
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   737
  ERROR: test-failure.t output changed
21763
84cd5ee787ed run-tests: hold iolock across diff/prompt when interactive
Matt Mackall <mpm@selenic.com>
parents: 21756
diff changeset
   738
  !.
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   739
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   740
  # Ran 2 tests, 0 skipped, 1 failed.
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   741
  python hash seed: * (glob)
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   742
  [1]
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   743
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   744
  $ cat test-failure.t
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   745
    $ echo babar
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   746
    rataxes
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   747
  This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   748
  this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   749
  pad pad pad pad............................................................
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   750
  pad pad pad pad............................................................
31828
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   751
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   752
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   753
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   754
  pad pad pad pad............................................................
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   755
22361
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   756
Interactive with custom view
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   757
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   758
  $ echo 'n' | rt -i --view echo
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   759
  running 2 tests using 1 parallel processes 
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35391
diff changeset
   760
  $TESTTMP/test-failure.t $TESTTMP/test-failure.t.err
22361
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   761
  Accept this change? [n]* (glob)
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   762
  ERROR: test-failure.t output changed
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   763
  !.
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   764
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   765
  # Ran 2 tests, 0 skipped, 1 failed.
22361
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   766
  python hash seed: * (glob)
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   767
  [1]
eb6adf750954 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com>
parents: 22292
diff changeset
   768
22108
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   769
View the fix
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   770
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   771
  $ echo 'y' | rt --view echo
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   772
  running 2 tests using 1 parallel processes 
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35391
diff changeset
   773
  $TESTTMP/test-failure.t $TESTTMP/test-failure.t.err
22108
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   774
  
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   775
  ERROR: test-failure.t output changed
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   776
  !.
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   777
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   778
  # Ran 2 tests, 0 skipped, 1 failed.
22108
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   779
  python hash seed: * (glob)
ccae572c5d09 test-run-tests: test --view
Matt Mackall <mpm@selenic.com>
parents: 22107
diff changeset
   780
  [1]
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   781
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   782
Accept the fix
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   783
35416
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   784
  $ cat >> test-failure.t <<EOF
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   785
  >   $ echo 'saved backup bundle to \$TESTTMP/foo.hg'
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   786
  >   saved backup bundle to \$TESTTMP/foo.hg
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   787
  >   $ echo 'saved backup bundle to \$TESTTMP/foo.hg'
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   788
  >   saved backup bundle to $TESTTMP\\foo.hg
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   789
  >   $ echo 'saved backup bundle to \$TESTTMP/foo.hg'
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   790
  >   saved backup bundle to \$TESTTMP/*.hg (glob)
417fa23017f9 tests: avoid echo with backslash escapes
Martin von Zweigbergk <martinvonz@google.com>
parents: 35393
diff changeset
   791
  > EOF
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   792
  $ echo 'y' | rt -i 2>&1
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   793
  running 2 tests using 1 parallel processes 
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   794
  
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   795
  --- $TESTTMP/test-failure.t
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   796
  +++ $TESTTMP/test-failure.t.err
31828
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   797
  @@ -1,5 +1,5 @@
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   798
     $ echo babar
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   799
  -  rataxes
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   800
  +  babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   801
   This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   802
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   803
   pad pad pad pad............................................................
35391
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   804
  @@ -11,6 +11,6 @@
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   805
     $ echo 'saved backup bundle to $TESTTMP/foo.hg'
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   806
     saved backup bundle to $TESTTMP/foo.hg
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   807
     $ echo 'saved backup bundle to $TESTTMP/foo.hg'
35391
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   808
  -  saved backup bundle to $TESTTMP\foo.hg
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   809
  +  saved backup bundle to $TESTTMP/foo.hg
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   810
     $ echo 'saved backup bundle to $TESTTMP/foo.hg'
35391
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   811
     saved backup bundle to $TESTTMP/*.hg (glob)
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   812
  Accept this change? [n] ..
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   813
  # Ran 2 tests, 0 skipped, 0 failed.
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   814
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   815
  $ sed -e 's,(glob)$,&<,g' test-failure.t
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   816
    $ echo babar
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   817
    babar
21995
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   818
  This is a noop statement so that
20bfcb484554 test-run-tests.t: add extra data to tests for keyword tests
Augie Fackler <raf@durin42.com>
parents: 21977
diff changeset
   819
  this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   820
  pad pad pad pad............................................................
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
   821
  pad pad pad pad............................................................
31828
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   822
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   823
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   824
  pad pad pad pad............................................................
ff60498211f3 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 31827
diff changeset
   825
  pad pad pad pad............................................................
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   826
    $ echo 'saved backup bundle to $TESTTMP/foo.hg'
35391
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   827
    saved backup bundle to $TESTTMP/foo.hg
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   828
    $ echo 'saved backup bundle to $TESTTMP/foo.hg'
35391
0432e54f4dbe run-tests: stop automatically adding a (glob) for bundle backup lines
Matt Harbison <matt_harbison@yahoo.com>
parents: 35387
diff changeset
   829
    saved backup bundle to $TESTTMP/foo.hg
23728
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   830
    $ echo 'saved backup bundle to $TESTTMP/foo.hg'
31d3f973d079 run-tests: automatically add (glob) to "saved backup bundle to" lines
Mads Kiilerich <madski@unity3d.com>
parents: 23676
diff changeset
   831
    saved backup bundle to $TESTTMP/*.hg (glob)<
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   832
32980
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   833
Race condition - test file was modified when test is running
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   834
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   835
  $ TESTRACEDIR=`pwd`
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   836
  $ export TESTRACEDIR
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   837
  $ cat > test-race.t <<EOF
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   838
  >   $ echo 1
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   839
  >   $ echo "# a new line" >> $TESTRACEDIR/test-race.t
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   840
  > EOF
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   841
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   842
  $ rt -i test-race.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   843
  running 1 tests using 1 parallel processes 
32980
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   844
  
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   845
  --- $TESTTMP/test-race.t
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   846
  +++ $TESTTMP/test-race.t.err
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   847
  @@ -1,2 +1,3 @@
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   848
     $ echo 1
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   849
  +  1
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   850
     $ echo "# a new line" >> $TESTTMP/test-race.t
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   851
  Reference output has changed (run again to prompt changes)
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   852
  ERROR: test-race.t output changed
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   853
  !
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   854
  Failed test-race.t: output changed
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   855
  # Ran 1 tests, 0 skipped, 1 failed.
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   856
  python hash seed: * (glob)
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   857
  [1]
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   858
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   859
  $ rm test-race.t
8dc62c97a665 run-tests: do not prompt changes (-i) if a race condition is detected
Jun Wu <quark@fb.com>
parents: 32942
diff changeset
   860
32982
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   861
When "#testcases" is used in .t files
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   862
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   863
  $ cat >> test-cases.t <<EOF
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   864
  > #testcases a b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   865
  > #if a
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   866
  >   $ echo 1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   867
  > #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   868
  > #if b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   869
  >   $ echo 2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   870
  > #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   871
  > EOF
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   872
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   873
  $ cat <<EOF | rt -i test-cases.t 2>&1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   874
  > y
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   875
  > y
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   876
  > EOF
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   877
  running 2 tests using 1 parallel processes 
32982
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   878
  
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   879
  --- $TESTTMP/test-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
   880
  +++ $TESTTMP/test-cases.t#a.err
32982
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   881
  @@ -1,6 +1,7 @@
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   882
   #testcases a b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   883
   #if a
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   884
     $ echo 1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   885
  +  1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   886
   #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   887
   #if b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   888
     $ echo 2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   889
  Accept this change? [n] .
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   890
  --- $TESTTMP/test-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
   891
  +++ $TESTTMP/test-cases.t#b.err
32982
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   892
  @@ -5,4 +5,5 @@
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   893
   #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   894
   #if b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   895
     $ echo 2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   896
  +  2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   897
   #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   898
  Accept this change? [n] .
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   899
  # Ran 2 tests, 0 skipped, 0 failed.
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   900
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   901
  $ cat test-cases.t
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   902
  #testcases a b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   903
  #if a
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   904
    $ echo 1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   905
    1
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   906
  #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   907
  #if b
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   908
    $ echo 2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   909
    2
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   910
  #endif
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   911
33934
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   912
  $ cat >> test-cases.t <<'EOF'
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   913
  > #if a
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   914
  >   $ NAME=A
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   915
  > #else
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   916
  >   $ NAME=B
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   917
  > #endif
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   918
  >   $ echo $NAME
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   919
  >   A (a !)
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   920
  >   B (b !)
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   921
  > EOF
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   922
  $ rt test-cases.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   923
  running 2 tests using 1 parallel processes 
33934
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   924
  ..
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   925
  # Ran 2 tests, 0 skipped, 0 failed.
6cc8f848b4c3 run-tests: make per-line condition support testcase names
Jun Wu <quark@fb.com>
parents: 33814
diff changeset
   926
38824
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   927
When using multiple dimensions of "#testcases" in .t files
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   928
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   929
  $ cat > test-cases.t <<'EOF'
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   930
  > #testcases a b
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   931
  > #testcases c d
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   932
  > #if a d
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   933
  >   $ echo $TESTCASE
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   934
  >   a#d
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   935
  > #endif
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   936
  > #if b c
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   937
  >   $ echo yes
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   938
  >   no
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   939
  > #endif
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   940
  > EOF
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   941
  $ rt test-cases.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   942
  running 4 tests using 1 parallel processes 
38824
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   943
  ..
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   944
  --- $TESTTMP/test-cases.t
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   945
  +++ $TESTTMP/test-cases.t#b#c.err
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   946
  @@ -6,5 +6,5 @@
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   947
   #endif
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   948
   #if b c
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   949
     $ echo yes
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   950
  -  no
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   951
  +  yes
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   952
   #endif
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   953
  
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   954
  ERROR: test-cases.t#b#c output changed
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   955
  !.
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   956
  Failed test-cases.t#b#c: output changed
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   957
  # Ran 4 tests, 0 skipped, 1 failed.
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   958
  python hash seed: * (glob)
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   959
  [1]
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   960
3086a8627b29 testrunner: allow multiple #testcases
Martin von Zweigbergk <martinvonz@google.com>
parents: 38823
diff changeset
   961
  $ rm test-cases.t#b#c.err
32982
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   962
  $ rm test-cases.t
573baab2a797 run-tests: fix -i when "#testcases" is used in .t test
Jun Wu <quark@fb.com>
parents: 32980
diff changeset
   963
21755
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   964
(reinstall)
9e9288b9463a test-run-tests.t: test the --interactive option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21744
diff changeset
   965
  $ mv backup test-failure.t
21756
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   966
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   967
No Diff
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   968
===============
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   969
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   970
  $ rt --nodiff
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   971
  running 2 tests using 1 parallel processes 
21756
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   972
  !.
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   973
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   974
  # Ran 2 tests, 0 skipped, 1 failed.
21756
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   975
  python hash seed: * (glob)
f5fd1580a649 test-run-tests.t: test the --nodiff option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21755
diff changeset
   976
  [1]
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
   977
26422
41436beaf463 run-tests: report paths saved by --keep-tmpdir
timeless@mozdev.org
parents: 26158
diff changeset
   978
test --tmpdir support
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   979
  $ rt --tmpdir=$TESTTMP/keep test-success.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   980
  running 1 tests using 1 parallel processes 
26422
41436beaf463 run-tests: report paths saved by --keep-tmpdir
timeless@mozdev.org
parents: 26158
diff changeset
   981
  
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35391
diff changeset
   982
  Keeping testtmp dir: $TESTTMP/keep/child1/test-success.t
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35391
diff changeset
   983
  Keeping threadtmp dir: $TESTTMP/keep/child1 
26422
41436beaf463 run-tests: report paths saved by --keep-tmpdir
timeless@mozdev.org
parents: 26158
diff changeset
   984
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
   985
  # Ran 1 tests, 0 skipped, 0 failed.
26422
41436beaf463 run-tests: report paths saved by --keep-tmpdir
timeless@mozdev.org
parents: 26158
diff changeset
   986
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   987
timeouts
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   988
========
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   989
  $ cat > test-timeout.t <<EOF
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   990
  >   $ sleep 2
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   991
  >   $ echo pass
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   992
  >   pass
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   993
  > EOF
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   994
  > echo '#require slow' > test-slow-timeout.t
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
   995
  > cat test-timeout.t >> test-slow-timeout.t
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
   996
  $ rt --timeout=1 --slowtimeout=3 test-timeout.t test-slow-timeout.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
   997
  running 2 tests using 1 parallel processes 
27393
a40b623e6380 run-tests: report timeouts in a less alarming fashion
Matt Mackall <mpm@selenic.com>
parents: 27141
diff changeset
   998
  st
32474
c2b7fb580794 tests: hint how to run slow tests when rejecting
Kyle Lippincott <spectral@google.com>
parents: 32316
diff changeset
   999
  Skipped test-slow-timeout.t: missing feature: allow slow tests (use --allow-slow-tests)
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1000
  Failed test-timeout.t: timed out
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1001
  # Ran 1 tests, 1 skipped, 1 failed.
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1002
  python hash seed: * (glob)
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1003
  [1]
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1004
  $ rt --timeout=1 --slowtimeout=3 \
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1005
  > test-timeout.t test-slow-timeout.t --allow-slow-tests
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1006
  running 2 tests using 1 parallel processes 
27393
a40b623e6380 run-tests: report timeouts in a less alarming fashion
Matt Mackall <mpm@selenic.com>
parents: 27141
diff changeset
  1007
  .t
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1008
  Failed test-timeout.t: timed out
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1009
  # Ran 2 tests, 0 skipped, 1 failed.
27141
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1010
  python hash seed: * (glob)
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1011
  [1]
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1012
  $ rm test-timeout.t test-slow-timeout.t
a4e3dec3010e run-tests: add --slowtimeout and use it for slow tests
timeless <timeless@mozdev.org>
parents: 27057
diff changeset
  1013
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1014
test for --time
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1015
==================
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1016
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1017
  $ rt test-success.t --time
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1018
  running 1 tests using 1 parallel processes 
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1019
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1020
  # Ran 1 tests, 0 skipped, 0 failed.
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1021
  # Producing time report
25098
bf84ab53c2fd run-tests: include 'start' and 'end' in --time output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25097
diff changeset
  1022
  start   end     cuser   csys    real      Test
bf84ab53c2fd run-tests: include 'start' and 'end' in --time output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25097
diff changeset
  1023
  \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   test-success.t (re)
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1024
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1025
test for --time with --job enabled
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1026
====================================
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1027
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1028
  $ rt test-success.t --time --jobs 2
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1029
  running 1 tests using 1 parallel processes 
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1030
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1031
  # Ran 1 tests, 0 skipped, 0 failed.
21977
4ca4e1572022 run-tests: '--time' option provide more details to Linux users
anuraggoel <anurag.dsps@gmail.com>
parents: 21926
diff changeset
  1032
  # Producing time report
25098
bf84ab53c2fd run-tests: include 'start' and 'end' in --time output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25097
diff changeset
  1033
  start   end     cuser   csys    real      Test
bf84ab53c2fd run-tests: include 'start' and 'end' in --time output
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25097
diff changeset
  1034
  \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   \s*[\d\.]{5}   test-success.t (re)
21996
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1035
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1036
Skips
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1037
================
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1038
  $ cat > test-skip.t <<EOF
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1039
  >   $ echo xyzzy
36677
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1040
  > #if true
22045
769198c6a62d run-tests: add #require to abort full test
Matt Mackall <mpm@selenic.com>
parents: 22044
diff changeset
  1041
  > #require false
36677
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1042
  > #end
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1043
  > EOF
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1044
  $ cat > test-noskip.t <<EOF
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1045
  > #if false
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1046
  > #require false
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1047
  > #endif
21996
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1048
  > EOF
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1049
  $ rt --nodiff
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1050
  running 4 tests using 1 parallel processes 
36677
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1051
  !.s.
27564
80b53082a353 run-tests: report missing feature for skipped tests
timeless <timeless@mozdev.org>
parents: 27509
diff changeset
  1052
  Skipped test-skip.t: missing feature: nail clipper
21996
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1053
  Failed test-failure.t: output changed
36677
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1054
  # Ran 3 tests, 1 skipped, 1 failed.
21996
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1055
  python hash seed: * (glob)
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1056
  [1]
947553944e92 test-run-tests.t: add tests for skips
Augie Fackler <raf@durin42.com>
parents: 21995
diff changeset
  1057
36677
a247a0e82e7d run-tests: allow #require inside #if
Jun Wu <quark@fb.com>
parents: 36461
diff changeset
  1058
  $ rm test-noskip.t
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1059
  $ rt --keyword xyzzy
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1060
  running 3 tests using 1 parallel processes 
22107
3b5cf39ffcc4 run-tests: don't show 'i' for tests that don't match a keyword
Matt Mackall <mpm@selenic.com>
parents: 22045
diff changeset
  1061
  .s
27564
80b53082a353 run-tests: report missing feature for skipped tests
timeless <timeless@mozdev.org>
parents: 27509
diff changeset
  1062
  Skipped test-skip.t: missing feature: nail clipper
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1063
  # Ran 2 tests, 2 skipped, 0 failed.
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1064
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1065
Skips with xml
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1066
  $ rt --keyword xyzzy \
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1067
  >  --xunit=xunit.xml
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1068
  running 3 tests using 1 parallel processes 
22107
3b5cf39ffcc4 run-tests: don't show 'i' for tests that don't match a keyword
Matt Mackall <mpm@selenic.com>
parents: 22045
diff changeset
  1069
  .s
27564
80b53082a353 run-tests: report missing feature for skipped tests
timeless <timeless@mozdev.org>
parents: 27509
diff changeset
  1070
  Skipped test-skip.t: missing feature: nail clipper
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1071
  # Ran 2 tests, 2 skipped, 0 failed.
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1072
  $ cat xunit.xml
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1073
  <?xml version="1.0" encoding="utf-8"?>
22107
3b5cf39ffcc4 run-tests: don't show 'i' for tests that don't match a keyword
Matt Mackall <mpm@selenic.com>
parents: 22045
diff changeset
  1074
  <testsuite errors="0" failures="0" name="run-tests" skipped="2" tests="2">
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1075
    <testcase name="test-success.t" time="*"/> (glob)
32715
a4d0e816a672 run-tests: add information about skipped tests to XUnit output
Siddharth Agarwal <sid0@fb.com>
parents: 32714
diff changeset
  1076
    <testcase name="test-skip.t">
a4d0e816a672 run-tests: add information about skipped tests to XUnit output
Siddharth Agarwal <sid0@fb.com>
parents: 32714
diff changeset
  1077
      <skipped>
a4d0e816a672 run-tests: add information about skipped tests to XUnit output
Siddharth Agarwal <sid0@fb.com>
parents: 32714
diff changeset
  1078
  <![CDATA[missing feature: nail clipper]]>    </skipped>
a4d0e816a672 run-tests: add information about skipped tests to XUnit output
Siddharth Agarwal <sid0@fb.com>
parents: 32714
diff changeset
  1079
    </testcase>
22044
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1080
  </testsuite>
a06172e85fd4 run-tests: add support for xunit test reports
Augie Fackler <raf@durin42.com>
parents: 21997
diff changeset
  1081
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1082
Missing skips or blacklisted skips don't count as executed:
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1083
  $ echo test-failure.t > blacklist
27927
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1084
  $ rt --blacklist=blacklist --json\
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1085
  >   test-failure.t test-bogus.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1086
  running 2 tests using 1 parallel processes 
21997
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1087
  ss
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1088
  Skipped test-bogus.t: Doesn't exist
93c3b3f55d59 run-tests: fix test result counts with --keyword specified or skips occurring
Augie Fackler <raf@durin42.com>
parents: 21996
diff changeset
  1089
  Skipped test-failure.t: blacklisted
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1090
  # Ran 0 tests, 2 skipped, 0 failed.
27927
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1091
  $ cat report.json
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1092
  testreport ={
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1093
      "test-bogus.t": {
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1094
          "result": "skip"
29199
daff05dcd184 run-tests: handle json.dumps divergence
timeless <timeless@mozdev.org>
parents: 29173
diff changeset
  1095
      },
27927
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1096
      "test-failure.t": {
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1097
          "result": "skip"
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1098
      }
0de4dfc9af0c run-tests: fix crash when --json and --blacklist are both used (issue5050)
Laurent Charignon <lcharignon@fb.com>
parents: 27686
diff changeset
  1099
  } (no-eol)
29173
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1100
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1101
Whitelist trumps blacklist
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1102
  $ echo test-failure.t > whitelist
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1103
  $ rt --blacklist=blacklist --whitelist=whitelist --json\
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1104
  >   test-failure.t test-bogus.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1105
  running 2 tests using 1 parallel processes 
29173
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1106
  s
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1107
  --- $TESTTMP/test-failure.t
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1108
  +++ $TESTTMP/test-failure.t.err
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1109
  @@ -1,5 +1,5 @@
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1110
     $ echo babar
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1111
  -  rataxes
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1112
  +  babar
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1113
   This is a noop statement so that
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1114
   this test is still more bytes than success.
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1115
   pad pad pad pad............................................................
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1116
  
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1117
  ERROR: test-failure.t output changed
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1118
  !
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1119
  Skipped test-bogus.t: Doesn't exist
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1120
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1121
  # Ran 1 tests, 1 skipped, 1 failed.
29173
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1122
  python hash seed: * (glob)
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1123
  [1]
fa9fae9a9372 tests: add coverage for run-tests.py --whitelist
timeless <timeless@mozdev.org>
parents: 28812
diff changeset
  1124
34263
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1125
Ensure that --test-list causes only the tests listed in that file to
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1126
be executed.
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1127
  $ echo test-success.t >> onlytest
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1128
  $ rt --test-list=onlytest
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1129
  running 1 tests using 1 parallel processes 
34263
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1130
  .
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1131
  # Ran 1 tests, 0 skipped, 0 failed.
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1132
  $ echo test-bogus.t >> anothertest
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1133
  $ rt --test-list=onlytest --test-list=anothertest
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1134
  running 2 tests using 1 parallel processes 
34263
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1135
  s.
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1136
  Skipped test-bogus.t: Doesn't exist
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1137
  # Ran 1 tests, 1 skipped, 0 failed.
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1138
  $ rm onlytest anothertest
1533371769b5 tests: add support for listing tests to run in a file
Augie Fackler <augie@google.com>
parents: 34041
diff changeset
  1139
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1140
test for --json
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1141
==================
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1142
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1143
  $ rt --json
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1144
  running 3 tests using 1 parallel processes 
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1145
  
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1146
  --- $TESTTMP/test-failure.t
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1147
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
  1148
  @@ -1,5 +1,5 @@
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1149
     $ echo babar
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1150
  -  rataxes
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1151
  +  babar
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1152
   This is a noop statement so that
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1153
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
  1154
   pad pad pad pad............................................................
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1155
  
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1156
  ERROR: test-failure.t output changed
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1157
  !.s
27564
80b53082a353 run-tests: report missing feature for skipped tests
timeless <timeless@mozdev.org>
parents: 27509
diff changeset
  1158
  Skipped test-skip.t: missing feature: nail clipper
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1159
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1160
  # Ran 2 tests, 1 skipped, 1 failed.
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1161
  python hash seed: * (glob)
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1162
  [1]
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1163
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1164
  $ cat report.json
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1165
  testreport ={
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1166
      "test-failure.t": [\{] (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1167
          "csys": "\s*[\d\.]{4,5}", ? (re)
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1168
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1169
          "diff": "---.+\+\+\+.+", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1170
          "end": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1171
          "result": "failure", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1172
          "start": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1173
          "time": "\s*[\d\.]{4,5}" (re)
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1174
      }, ? (re)
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1175
      "test-skip.t": {
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1176
          "csys": "\s*[\d\.]{4,5}", ? (re)
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1177
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1178
          "diff": "", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1179
          "end": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1180
          "result": "skip", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1181
          "start": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1182
          "time": "\s*[\d\.]{4,5}" (re)
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1183
      }, ? (re)
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1184
      "test-success.t": [\{] (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1185
          "csys": "\s*[\d\.]{4,5}", ? (re)
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1186
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1187
          "diff": "", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1188
          "end": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1189
          "result": "success", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1190
          "start": "\s*[\d\.]{4,5}", ? (re)
23245
d33a90cb2a32 test-run-tests: accept more levels of precision and trailing ws (issue4440)
Augie Fackler <raf@durin42.com>
parents: 23107
diff changeset
  1191
          "time": "\s*[\d\.]{4,5}" (re)
22391
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1192
      }
c42e69268f5b run-tests: added '--json' functionality to store test result in json file
anuraggoel <anurag.dsps@gmail.com>
parents: 22361
diff changeset
  1193
  } (no-eol)
32718
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1194
--json with --outputdir
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1195
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1196
  $ rm report.json
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1197
  $ rm -r output
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1198
  $ mkdir output
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1199
  $ rt --json --outputdir output
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1200
  running 3 tests using 1 parallel processes 
32718
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1201
  
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1202
  --- $TESTTMP/test-failure.t
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1203
  +++ $TESTTMP/output/test-failure.t.err
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1204
  @@ -1,5 +1,5 @@
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1205
     $ echo babar
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1206
  -  rataxes
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1207
  +  babar
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1208
   This is a noop statement so that
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1209
   this test is still more bytes than success.
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1210
   pad pad pad pad............................................................
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1211
  
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1212
  ERROR: test-failure.t output changed
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1213
  !.s
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1214
  Skipped test-skip.t: missing feature: nail clipper
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1215
  Failed test-failure.t: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1216
  # Ran 2 tests, 1 skipped, 1 failed.
32718
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1217
  python hash seed: * (glob)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1218
  [1]
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1219
  $ f report.json
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1220
  report.json: file not found
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1221
  $ cat output/report.json
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1222
  testreport ={
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1223
      "test-failure.t": [\{] (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1224
          "csys": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1225
          "cuser": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1226
          "diff": "---.+\+\+\+.+", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1227
          "end": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1228
          "result": "failure", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1229
          "start": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1230
          "time": "\s*[\d\.]{4,5}" (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1231
      }, ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1232
      "test-skip.t": {
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1233
          "csys": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1234
          "cuser": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1235
          "diff": "", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1236
          "end": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1237
          "result": "skip", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1238
          "start": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1239
          "time": "\s*[\d\.]{4,5}" (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1240
      }, ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1241
      "test-success.t": [\{] (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1242
          "csys": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1243
          "cuser": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1244
          "diff": "", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1245
          "end": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1246
          "result": "success", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1247
          "start": "\s*[\d\.]{4,5}", ? (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1248
          "time": "\s*[\d\.]{4,5}" (re)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1249
      }
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1250
  } (no-eol)
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1251
  $ ls -a output
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1252
  .
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1253
  ..
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1254
  .testtimes
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1255
  report.json
232875623c27 run-tests: write JSON reports to output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32717
diff changeset
  1256
  test-failure.t.err
22579
36a940d82f88 test: protect the run-tests.py --json test behind an hghave rule
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22486
diff changeset
  1257
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1258
Test that failed test accepted through interactive are properly reported:
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1259
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1260
  $ cp test-failure.t backup
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1261
  $ echo y | rt --json -i
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1262
  running 3 tests using 1 parallel processes 
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1263
  
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1264
  --- $TESTTMP/test-failure.t
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1265
  +++ $TESTTMP/test-failure.t.err
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
  1266
  @@ -1,5 +1,5 @@
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1267
     $ echo babar
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1268
  -  rataxes
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1269
  +  babar
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1270
   This is a noop statement so that
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1271
   this test is still more bytes than success.
28316
c0cecc153d25 test-run-tests: pad the failure test to preserve the run order
Matt Harbison <matt_harbison@yahoo.com>
parents: 28180
diff changeset
  1272
   pad pad pad pad............................................................
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1273
  Accept this change? [n] ..s
27564
80b53082a353 run-tests: report missing feature for skipped tests
timeless <timeless@mozdev.org>
parents: 27509
diff changeset
  1274
  Skipped test-skip.t: missing feature: nail clipper
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1275
  # Ran 2 tests, 1 skipped, 0 failed.
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1276
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1277
  $ cat report.json
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1278
  testreport ={
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1279
      "test-failure.t": [\{] (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1280
          "csys": "\s*[\d\.]{4,5}", ? (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1281
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1282
          "diff": "", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1283
          "end": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1284
          "result": "success", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1285
          "start": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1286
          "time": "\s*[\d\.]{4,5}" (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1287
      }, ? (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1288
      "test-skip.t": {
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1289
          "csys": "\s*[\d\.]{4,5}", ? (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1290
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1291
          "diff": "", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1292
          "end": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1293
          "result": "skip", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1294
          "start": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1295
          "time": "\s*[\d\.]{4,5}" (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1296
      }, ? (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1297
      "test-success.t": [\{] (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1298
          "csys": "\s*[\d\.]{4,5}", ? (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1299
          "cuser": "\s*[\d\.]{4,5}", ? (re)
27686
df142b77b4c2 run-tests: add 'diff' entry in json report
Laurent Charignon <lcharignon@fb.com>
parents: 27602
diff changeset
  1300
          "diff": "", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1301
          "end": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1302
          "result": "success", ? (re)
25097
a4fce7905721 run-tests: track start and end time of tests
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25054
diff changeset
  1303
          "start": "\s*[\d\.]{4,5}", ? (re)
24979
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1304
          "time": "\s*[\d\.]{4,5}" (re)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1305
      }
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1306
  } (no-eol)
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1307
  $ mv backup test-failure.t
f44db7343be9 run-test: add a test for json output when -i is used
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24811
diff changeset
  1308
24811
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1309
backslash on end of line with glob matching is handled properly
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1310
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1311
  $ cat > test-glob-backslash.t << EOF
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1312
  >   $ echo 'foo bar \\'
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1313
  >   foo * \ (glob)
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1314
  > EOF
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1315
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1316
  $ rt test-glob-backslash.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1317
  running 1 tests using 1 parallel processes 
24811
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1318
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1319
  # Ran 1 tests, 0 skipped, 0 failed.
24811
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1320
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1321
  $ rm -f test-glob-backslash.t
a2dcf460e141 run-tests: don't error when glob matched line ends with backslash
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24507
diff changeset
  1322
31673
6a2959acae1a runtests: change local IP glob pattern from "127.0.0.1" to "$LOCALIP"
Jun Wu <quark@fb.com>
parents: 29518
diff changeset
  1323
Test globbing of local IP addresses
29518
348b2b9da703 run-tests: add support for using 127.0.0.1 as a glob
Augie Fackler <raf@durin42.com>
parents: 29280
diff changeset
  1324
  $ echo 172.16.18.1
31673
6a2959acae1a runtests: change local IP glob pattern from "127.0.0.1" to "$LOCALIP"
Jun Wu <quark@fb.com>
parents: 29518
diff changeset
  1325
  $LOCALIP (glob)
6a2959acae1a runtests: change local IP glob pattern from "127.0.0.1" to "$LOCALIP"
Jun Wu <quark@fb.com>
parents: 29518
diff changeset
  1326
  $ echo dead:beef::1
6a2959acae1a runtests: change local IP glob pattern from "127.0.0.1" to "$LOCALIP"
Jun Wu <quark@fb.com>
parents: 29518
diff changeset
  1327
  $LOCALIP (glob)
29518
348b2b9da703 run-tests: add support for using 127.0.0.1 as a glob
Augie Fackler <raf@durin42.com>
parents: 29280
diff changeset
  1328
38616
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1329
Add support for external test formatter
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1330
=======================================
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1331
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 38824
diff changeset
  1332
  $ CUSTOM_TEST_RESULT=basic_test_result "$PYTHON" $TESTDIR/run-tests.py --with-hg=`which hg` "$@" test-success.t test-failure.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1333
  running 2 tests using 1 parallel processes 
38616
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1334
  
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1335
  # Ran 2 tests, 0 skipped, 0 failed.
38621
f4a214300957 run-tests: add missing life-cycle methods on the example custom test result
Boris Feld <boris.feld@octobus.net>
parents: 38616
diff changeset
  1336
  ON_START! <__main__.TestSuite tests=[<__main__.TTest testMethod=test-failure.t>, <__main__.TTest testMethod=test-success.t>]>
38616
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1337
  FAILURE! test-failure.t output changed
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1338
  SUCCESS! test-success.t
38621
f4a214300957 run-tests: add missing life-cycle methods on the example custom test result
Boris Feld <boris.feld@octobus.net>
parents: 38616
diff changeset
  1339
  ON_END!
38616
c44ae5997869 run-tests: add support for external test result
Boris Feld <boris.feld@octobus.net>
parents: 38554
diff changeset
  1340
25728
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1341
Test reusability for third party tools
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1342
======================================
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1343
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1344
  $ mkdir "$TESTTMP"/anothertests
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1345
  $ cd "$TESTTMP"/anothertests
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1346
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1347
test that `run-tests.py` can execute hghave, even if it runs not in
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1348
Mercurial source tree.
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1349
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1350
  $ cat > test-hghave.t <<EOF
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1351
  > #require true
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1352
  >   $ echo foo
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1353
  >   foo
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1354
  > EOF
28616
ca38d993b1b6 tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE
timeless <timeless@mozdev.org>
parents: 28596
diff changeset
  1355
  $ rt test-hghave.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1356
  running 1 tests using 1 parallel processes 
25728
905c32321cfb run-tests.py: execute hghave by the path relative to run-tests.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25472
diff changeset
  1357
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1358
  # Ran 1 tests, 0 skipped, 0 failed.
25729
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1359
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1360
test that RUNTESTDIR refers the directory, in which `run-tests.py` now
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1361
running is placed.
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1362
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1363
  $ cat > test-runtestdir.t <<EOF
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1364
  > - $TESTDIR, in which test-run-tests.t is placed
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1365
  > - \$TESTDIR, in which test-runtestdir.t is placed (expanded at runtime)
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1366
  > - \$RUNTESTDIR, in which run-tests.py is placed (expanded at runtime)
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1367
  > 
27057
c281c20ad0ad test-run-tests: conditionalize the $TESTDIR check for Windows separator
Matt Harbison <matt_harbison@yahoo.com>
parents: 26432
diff changeset
  1368
  > #if windows
c281c20ad0ad test-run-tests: conditionalize the $TESTDIR check for Windows separator
Matt Harbison <matt_harbison@yahoo.com>
parents: 26432
diff changeset
  1369
  >   $ test "\$TESTDIR" = "$TESTTMP\anothertests"
c281c20ad0ad test-run-tests: conditionalize the $TESTDIR check for Windows separator
Matt Harbison <matt_harbison@yahoo.com>
parents: 26432
diff changeset
  1370
  > #else
25729
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1371
  >   $ test "\$TESTDIR" = "$TESTTMP"/anothertests
27057
c281c20ad0ad test-run-tests: conditionalize the $TESTDIR check for Windows separator
Matt Harbison <matt_harbison@yahoo.com>
parents: 26432
diff changeset
  1372
  > #endif
35387
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1373
  > If this prints a path, that means RUNTESTDIR didn't equal
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1374
  > TESTDIR as it should have.
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1375
  >   $ test "\$RUNTESTDIR" = "$TESTDIR" || echo "\$RUNTESTDIR"
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1376
  > This should print the start of check-code. If this passes but the
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1377
  > previous check failed, that means we found a copy of check-code at whatever
c0c6df81c9bb tests: add some commentary and diagnostics to test-run-tests.t
Augie Fackler <augie@google.com>
parents: 35241
diff changeset
  1378
  > RUNTESTSDIR ended up containing, even though it doesn't match TESTDIR.
32937
7fe1f9785c75 tests: sed away python #! in test-run-tests.t to avoid some upcoming insanity
Augie Fackler <augie@google.com>
parents: 32720
diff changeset
  1379
  >   $ head -n 3 "\$RUNTESTDIR"/../contrib/check-code.py | sed 's@.!.*python@#!USRBINENVPY@'
7fe1f9785c75 tests: sed away python #! in test-run-tests.t to avoid some upcoming insanity
Augie Fackler <augie@google.com>
parents: 32720
diff changeset
  1380
  >   #!USRBINENVPY
25729
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1381
  >   #
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1382
  >   # check-code - a style and portability checker for Mercurial
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1383
  > EOF
28616
ca38d993b1b6 tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE
timeless <timeless@mozdev.org>
parents: 28596
diff changeset
  1384
  $ rt test-runtestdir.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1385
  running 1 tests using 1 parallel processes 
25729
57dfadc4f46c run-tests.py: add RUNTESTDIR to refer `tests` of Mercurial
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25728
diff changeset
  1386
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1387
  # Ran 1 tests, 0 skipped, 0 failed.
25730
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1388
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1389
#if execbit
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1390
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1391
test that TESTDIR is referred in PATH
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1392
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1393
  $ cat > custom-command.sh <<EOF
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1394
  > #!/bin/sh
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1395
  > echo "hello world"
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1396
  > EOF
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1397
  $ chmod +x custom-command.sh
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1398
  $ cat > test-testdir-path.t <<EOF
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1399
  >   $ custom-command.sh
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1400
  >   hello world
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1401
  > EOF
28616
ca38d993b1b6 tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE
timeless <timeless@mozdev.org>
parents: 28596
diff changeset
  1402
  $ rt test-testdir-path.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1403
  running 1 tests using 1 parallel processes 
25730
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1404
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1405
  # Ran 1 tests, 0 skipped, 0 failed.
25730
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1406
c380d5273e91 run-tests.py: add TESTDIR to PATH if it differs from RUNTESTDIR
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25729
diff changeset
  1407
#endif
26109
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1408
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1409
test support for --allow-slow-tests
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1410
  $ cat > test-very-slow-test.t <<EOF
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1411
  > #require slow
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1412
  >   $ echo pass
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1413
  >   pass
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1414
  > EOF
28616
ca38d993b1b6 tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE
timeless <timeless@mozdev.org>
parents: 28596
diff changeset
  1415
  $ rt test-very-slow-test.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1416
  running 1 tests using 1 parallel processes 
26109
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1417
  s
32474
c2b7fb580794 tests: hint how to run slow tests when rejecting
Kyle Lippincott <spectral@google.com>
parents: 32316
diff changeset
  1418
  Skipped test-very-slow-test.t: missing feature: allow slow tests (use --allow-slow-tests)
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1419
  # Ran 0 tests, 1 skipped, 0 failed.
27395
0622d6e134fb tests: avoid duplicate install steps in test-run-tests
Matt Mackall <mpm@selenic.com>
parents: 27393
diff changeset
  1420
  $ rt $HGTEST_RUN_TESTS_PURE --allow-slow-tests test-very-slow-test.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1421
  running 1 tests using 1 parallel processes 
26109
bad09bd22b6a run-tests: add support for marking tests as very slow
Augie Fackler <augie@google.com>
parents: 25730
diff changeset
  1422
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1423
  # Ran 1 tests, 0 skipped, 0 failed.
28180
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1424
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1425
support for running a test outside the current directory
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1426
  $ mkdir nonlocal
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1427
  $ cat > nonlocal/test-is-not-here.t << EOF
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1428
  >   $ echo pass
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1429
  >   pass
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1430
  > EOF
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1431
  $ rt nonlocal/test-is-not-here.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1432
  running 1 tests using 1 parallel processes 
28180
2836a43c7722 run-tests: allow run-tests.py to run tests outside current directory
David R. MacIver <david@drmaciver.com>
parents: 28126
diff changeset
  1433
  .
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1434
  # Ran 1 tests, 0 skipped, 0 failed.
28596
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1435
34969
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1436
support for automatically discovering test if arg is a folder
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1437
  $ mkdir tmp && cd tmp
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1438
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1439
  $ cat > test-uno.t << EOF
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1440
  >   $ echo line
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1441
  >   line
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1442
  > EOF
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1443
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1444
  $ cp test-uno.t test-dos.t
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1445
  $ cd ..
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1446
  $ cp -R tmp tmpp
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1447
  $ cp tmp/test-uno.t test-solo.t
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1448
35241
2a99c5bfea47 test-run-tests: do not rebuild hg in the test
Jun Wu <quark@fb.com>
parents: 35189
diff changeset
  1449
  $ rt tmp/ test-solo.t tmpp
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1450
  running 5 tests using 1 parallel processes 
34969
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1451
  .....
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1452
  # Ran 5 tests, 0 skipped, 0 failed.
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1453
  $ rm -rf tmp tmpp
d600bda4a3e1 run-tests: allow automatic test discovery when providing folder as argument
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34962
diff changeset
  1454
34962
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1455
support for running run-tests.py from another directory
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1456
  $ mkdir tmp && cd tmp
35097
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1457
34962
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1458
  $ cat > useful-file.sh << EOF
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1459
  > important command
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1460
  > EOF
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1461
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1462
  $ cat > test-folder.t << EOF
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1463
  >   $ cat \$TESTDIR/useful-file.sh
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1464
  >   important command
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1465
  > EOF
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1466
35097
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1467
  $ cat > test-folder-fail.t << EOF
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1468
  >   $ cat \$TESTDIR/useful-file.sh
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1469
  >   important commando
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1470
  > EOF
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1471
34962
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1472
  $ cd ..
35241
2a99c5bfea47 test-run-tests: do not rebuild hg in the test
Jun Wu <quark@fb.com>
parents: 35189
diff changeset
  1473
  $ rt tmp/test-*.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1474
  running 2 tests using 1 parallel processes 
35097
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1475
  
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1476
  --- $TESTTMP/anothertests/tmp/test-folder-fail.t
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1477
  +++ $TESTTMP/anothertests/tmp/test-folder-fail.t.err
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1478
  @@ -1,2 +1,2 @@
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1479
     $ cat $TESTDIR/useful-file.sh
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1480
  -  important commando
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1481
  +  important command
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1482
  
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1483
  ERROR: test-folder-fail.t output changed
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1484
  !.
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1485
  Failed test-folder-fail.t: output changed
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1486
  # Ran 2 tests, 0 skipped, 1 failed.
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1487
  python hash seed: * (glob)
fc0f3ed071fc run-tests: outputdir also has to be changed if $TESTDIR is not $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35069
diff changeset
  1488
  [1]
34962
a18eef03d879 run-tests: $TESTDIR can be something else than $PWD
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 34894
diff changeset
  1489
28596
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1490
support for bisecting failed tests automatically
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1491
  $ hg init bisect
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1492
  $ cd bisect
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1493
  $ cat >> test-bisect.t <<EOF
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1494
  >   $ echo pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1495
  >   pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1496
  > EOF
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1497
  $ hg add test-bisect.t
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1498
  $ hg ci -m 'good'
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1499
  $ cat >> test-bisect.t <<EOF
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1500
  >   $ echo pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1501
  >   fail
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1502
  > EOF
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1503
  $ hg ci -m 'bad'
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1504
  $ rt --known-good-rev=0 test-bisect.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1505
  running 1 tests using 1 parallel processes 
28596
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1506
  
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1507
  --- $TESTTMP/anothertests/bisect/test-bisect.t
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1508
  +++ $TESTTMP/anothertests/bisect/test-bisect.t.err
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1509
  @@ -1,4 +1,4 @@
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1510
     $ echo pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1511
     pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1512
     $ echo pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1513
  -  fail
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1514
  +  pass
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1515
  
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1516
  ERROR: test-bisect.t output changed
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1517
  !
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1518
  Failed test-bisect.t: output changed
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1519
  test-bisect.t broken by 72cbf122d116 (bad)
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1520
  # Ran 1 tests, 0 skipped, 1 failed.
28596
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1521
  python hash seed: * (glob)
9949950664cd run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com>
parents: 28317
diff changeset
  1522
  [1]
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1523
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1524
  $ cd ..
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1525
34041
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1526
support bisecting a separate repo
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1527
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1528
  $ hg init bisect-dependent
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1529
  $ cd bisect-dependent
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1530
  $ cat > test-bisect-dependent.t <<EOF
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1531
  >   $ tail -1 \$TESTDIR/../bisect/test-bisect.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1532
  >     pass
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1533
  > EOF
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1534
  $ hg commit -Am dependent test-bisect-dependent.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1535
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1536
  $ rt --known-good-rev=0 test-bisect-dependent.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1537
  running 1 tests using 1 parallel processes 
34041
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1538
  
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1539
  --- $TESTTMP/anothertests/bisect-dependent/test-bisect-dependent.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1540
  +++ $TESTTMP/anothertests/bisect-dependent/test-bisect-dependent.t.err
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1541
  @@ -1,2 +1,2 @@
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1542
     $ tail -1 $TESTDIR/../bisect/test-bisect.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1543
  -    pass
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1544
  +    fail
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1545
  
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1546
  ERROR: test-bisect-dependent.t output changed
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1547
  !
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1548
  Failed test-bisect-dependent.t: output changed
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1549
  Failed to identify failure point for test-bisect-dependent.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1550
  # Ran 1 tests, 0 skipped, 1 failed.
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1551
  python hash seed: * (glob)
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1552
  [1]
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1553
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1554
  $ rt --bisect-repo=../test-bisect test-bisect-dependent.t
35187
b4b0aed7bfaf run-tests: convert to argparse
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35155
diff changeset
  1555
  usage: run-tests.py [options] [tests]
34041
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1556
  run-tests.py: error: --bisect-repo cannot be used without --known-good-rev
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1557
  [2]
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1558
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1559
  $ rt --known-good-rev=0 --bisect-repo=../bisect test-bisect-dependent.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1560
  running 1 tests using 1 parallel processes 
34041
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1561
  
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1562
  --- $TESTTMP/anothertests/bisect-dependent/test-bisect-dependent.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1563
  +++ $TESTTMP/anothertests/bisect-dependent/test-bisect-dependent.t.err
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1564
  @@ -1,2 +1,2 @@
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1565
     $ tail -1 $TESTDIR/../bisect/test-bisect.t
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1566
  -    pass
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1567
  +    fail
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1568
  
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1569
  ERROR: test-bisect-dependent.t output changed
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1570
  !
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1571
  Failed test-bisect-dependent.t: output changed
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1572
  test-bisect-dependent.t broken by 72cbf122d116 (bad)
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1573
  # Ran 1 tests, 0 skipped, 1 failed.
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1574
  python hash seed: * (glob)
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1575
  [1]
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1576
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1577
  $ cd ..
40313c63da87 run-tests: allow bisecting a different repo
Jun Wu <quark@fb.com>
parents: 33934
diff changeset
  1578
32622
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1579
Test a broken #if statement doesn't break run-tests threading.
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1580
==============================================================
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1581
  $ mkdir broken
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1582
  $ cd broken
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1583
  $ cat > test-broken.t <<EOF
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1584
  > true
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1585
  > #if notarealhghavefeature
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1586
  >   $ false
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1587
  > #endif
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1588
  > EOF
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1589
  $ for f in 1 2 3 4 ; do
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1590
  > cat > test-works-$f.t <<EOF
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1591
  > This is test case $f
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1592
  >   $ sleep 1
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1593
  > EOF
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1594
  > done
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1595
  $ rt -j 2
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1596
  running 5 tests using 2 parallel processes 
32622
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1597
  ....
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1598
  # Ran 5 tests, 0 skipped, 0 failed.
32622
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1599
  skipped: unknown feature: notarealhghavefeature
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1600
  
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1601
  $ cd ..
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1602
  $ rm -rf broken
931bb962e0eb tests: fix run-tests when there's a bad #if in a test
Augie Fackler <augie@google.com>
parents: 32474
diff changeset
  1603
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1604
Test cases in .t files
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1605
======================
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1606
  $ mkdir cases
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1607
  $ cd cases
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1608
  $ cat > test-cases-abc.t <<'EOF'
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1609
  > #testcases A B C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1610
  >   $ V=B
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1611
  > #if A
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1612
  >   $ V=A
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1613
  > #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1614
  > #if C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1615
  >   $ V=C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1616
  > #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1617
  >   $ echo $V | sed 's/A/C/'
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1618
  >   C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1619
  > #if C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1620
  >   $ [ $V = C ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1621
  > #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1622
  > #if A
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1623
  >   $ [ $V = C ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1624
  >   [1]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1625
  > #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1626
  > #if no-C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1627
  >   $ [ $V = C ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1628
  >   [1]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1629
  > #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1630
  >   $ [ $V = D ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1631
  >   [1]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1632
  > EOF
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1633
  $ rt
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1634
  running 3 tests using 1 parallel processes 
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1635
  .
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1636
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1637
  +++ $TESTTMP/anothertests/cases/test-cases-abc.t#B.err
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1638
  @@ -7,7 +7,7 @@
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1639
     $ V=C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1640
   #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1641
     $ echo $V | sed 's/A/C/'
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1642
  -  C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1643
  +  B
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1644
   #if C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1645
     $ [ $V = C ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1646
   #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1647
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1648
  ERROR: test-cases-abc.t#B output changed
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1649
  !.
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1650
  Failed test-cases-abc.t#B: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1651
  # Ran 3 tests, 0 skipped, 1 failed.
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1652
  python hash seed: * (glob)
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1653
  [1]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1654
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1655
--restart works
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1656
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1657
  $ rt --restart
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1658
  running 2 tests using 1 parallel processes 
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1659
  
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1660
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1661
  +++ $TESTTMP/anothertests/cases/test-cases-abc.t#B.err
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1662
  @@ -7,7 +7,7 @@
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1663
     $ V=C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1664
   #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1665
     $ echo $V | sed 's/A/C/'
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1666
  -  C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1667
  +  B
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1668
   #if C
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1669
     $ [ $V = C ]
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1670
   #endif
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1671
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1672
  ERROR: test-cases-abc.t#B output changed
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1673
  !.
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1674
  Failed test-cases-abc.t#B: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1675
  # Ran 2 tests, 0 skipped, 1 failed.
32316
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1676
  python hash seed: * (glob)
7340465bd788 run-tests: support multiple cases in .t test
Jun Wu <quark@fb.com>
parents: 31829
diff changeset
  1677
  [1]
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1678
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1679
--restart works with outputdir
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1680
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1681
  $ mkdir output
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1682
  $ mv test-cases-abc.t#B.err output
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1683
  $ rt --restart --outputdir output
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1684
  running 2 tests using 1 parallel processes 
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1685
  
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1686
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1687
  +++ $TESTTMP/anothertests/cases/output/test-cases-abc.t#B.err
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1688
  @@ -7,7 +7,7 @@
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1689
     $ V=C
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1690
   #endif
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1691
     $ echo $V | sed 's/A/C/'
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1692
  -  C
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1693
  +  B
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1694
   #if C
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1695
     $ [ $V = C ]
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1696
   #endif
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1697
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1698
  ERROR: test-cases-abc.t#B output changed
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1699
  !.
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1700
  Failed test-cases-abc.t#B: output changed
32942
5af78c524f34 tests: remove support for warned tests
Gregory Szorc <gregory.szorc@gmail.com>
parents: 32937
diff changeset
  1701
  # Ran 2 tests, 0 skipped, 1 failed.
32720
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1702
  python hash seed: * (glob)
0cd641bfbf57 run-tests: make --restart work with output dir
Siddharth Agarwal <sid0@fb.com>
parents: 32718
diff changeset
  1703
  [1]
35069
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1704
35536
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1705
Test TESTCASE variable
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1706
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1707
  $ cat > test-cases-ab.t <<'EOF'
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1708
  >   $ dostuff() {
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1709
  >   >   echo "In case $TESTCASE"
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1710
  >   > }
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1711
  > #testcases A B
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1712
  > #if A
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1713
  >   $ dostuff
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1714
  >   In case A
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1715
  > #endif
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1716
  > #if B
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1717
  >   $ dostuff
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1718
  >   In case B
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1719
  > #endif
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1720
  > EOF
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1721
  $ rt test-cases-ab.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1722
  running 2 tests using 1 parallel processes 
35536
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1723
  ..
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1724
  # Ran 2 tests, 0 skipped, 0 failed.
f04d16bef2c7 tests: make #testcase available as env var in test
Martin von Zweigbergk <martinvonz@google.com>
parents: 35416
diff changeset
  1725
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1726
Support running a specific test case
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1727
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1728
  $ rt "test-cases-abc.t#B"
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1729
  running 1 tests using 1 parallel processes 
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1730
  
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1731
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1732
  +++ $TESTTMP/anothertests/cases/test-cases-abc.t#B.err
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1733
  @@ -7,7 +7,7 @@
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1734
     $ V=C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1735
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1736
     $ echo $V | sed 's/A/C/'
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1737
  -  C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1738
  +  B
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1739
   #if C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1740
     $ [ $V = C ]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1741
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1742
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1743
  ERROR: test-cases-abc.t#B output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1744
  !
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1745
  Failed test-cases-abc.t#B: output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1746
  # Ran 1 tests, 0 skipped, 1 failed.
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1747
  python hash seed: * (glob)
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1748
  [1]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1749
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1750
Support running multiple test cases in the same file
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1751
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1752
  $ rt test-cases-abc.t#B test-cases-abc.t#C
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1753
  running 2 tests using 1 parallel processes 
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1754
  
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1755
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1756
  +++ $TESTTMP/anothertests/cases/test-cases-abc.t#B.err
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1757
  @@ -7,7 +7,7 @@
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1758
     $ V=C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1759
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1760
     $ echo $V | sed 's/A/C/'
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1761
  -  C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1762
  +  B
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1763
   #if C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1764
     $ [ $V = C ]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1765
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1766
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1767
  ERROR: test-cases-abc.t#B output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1768
  !.
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1769
  Failed test-cases-abc.t#B: output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1770
  # Ran 2 tests, 0 skipped, 1 failed.
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1771
  python hash seed: * (glob)
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1772
  [1]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1773
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1774
Support ignoring invalid test cases
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1775
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1776
  $ rt test-cases-abc.t#B test-cases-abc.t#D
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1777
  running 1 tests using 1 parallel processes 
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1778
  
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1779
  --- $TESTTMP/anothertests/cases/test-cases-abc.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1780
  +++ $TESTTMP/anothertests/cases/test-cases-abc.t#B.err
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1781
  @@ -7,7 +7,7 @@
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1782
     $ V=C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1783
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1784
     $ echo $V | sed 's/A/C/'
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1785
  -  C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1786
  +  B
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1787
   #if C
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1788
     $ [ $V = C ]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1789
   #endif
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1790
  
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1791
  ERROR: test-cases-abc.t#B output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1792
  !
38223
b865bba56db1 run-tests: update the test case name format
Boris Feld <boris.feld@octobus.net>
parents: 38222
diff changeset
  1793
  Failed test-cases-abc.t#B: output changed
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1794
  # Ran 1 tests, 0 skipped, 1 failed.
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1795
  python hash seed: * (glob)
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1796
  [1]
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1797
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1798
Support running complex test cases names
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1799
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1800
  $ cat > test-cases-advanced-cases.t <<'EOF'
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1801
  > #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1802
  >   $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1803
  >   simple
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1804
  > EOF
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1805
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1806
  $ cat test-cases-advanced-cases.t
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1807
  #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1808
    $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1809
    simple
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1810
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1811
  $ rt test-cases-advanced-cases.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1812
  running 3 tests using 1 parallel processes 
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1813
  
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1814
  --- $TESTTMP/anothertests/cases/test-cases-advanced-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1815
  +++ $TESTTMP/anothertests/cases/test-cases-advanced-cases.t#case-with-dashes.err
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1816
  @@ -1,3 +1,3 @@
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1817
   #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1818
     $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1819
  -  simple
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1820
  +  case-with-dashes
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1821
  
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1822
  ERROR: test-cases-advanced-cases.t#case-with-dashes output changed
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1823
  !
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1824
  --- $TESTTMP/anothertests/cases/test-cases-advanced-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1825
  +++ $TESTTMP/anothertests/cases/test-cases-advanced-cases.t#casewith_-.chars.err
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1826
  @@ -1,3 +1,3 @@
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1827
   #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1828
     $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1829
  -  simple
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1830
  +  casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1831
  
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1832
  ERROR: test-cases-advanced-cases.t#casewith_-.chars output changed
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1833
  !.
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1834
  Failed test-cases-advanced-cases.t#case-with-dashes: output changed
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1835
  Failed test-cases-advanced-cases.t#casewith_-.chars: output changed
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1836
  # Ran 3 tests, 0 skipped, 2 failed.
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1837
  python hash seed: * (glob)
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1838
  [1]
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1839
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1840
  $ rt "test-cases-advanced-cases.t#case-with-dashes"
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1841
  running 1 tests using 1 parallel processes 
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1842
  
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1843
  --- $TESTTMP/anothertests/cases/test-cases-advanced-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1844
  +++ $TESTTMP/anothertests/cases/test-cases-advanced-cases.t#case-with-dashes.err
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1845
  @@ -1,3 +1,3 @@
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1846
   #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1847
     $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1848
  -  simple
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1849
  +  case-with-dashes
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1850
  
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1851
  ERROR: test-cases-advanced-cases.t#case-with-dashes output changed
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1852
  !
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1853
  Failed test-cases-advanced-cases.t#case-with-dashes: output changed
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1854
  # Ran 1 tests, 0 skipped, 1 failed.
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1855
  python hash seed: * (glob)
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1856
  [1]
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1857
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1858
  $ rt "test-cases-advanced-cases.t#casewith_-.chars"
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1859
  running 1 tests using 1 parallel processes 
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1860
  
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1861
  --- $TESTTMP/anothertests/cases/test-cases-advanced-cases.t
38823
a9a4b0fc1e5d testrunner: use "#" for "test cases" suffix in .err filename too
Martin von Zweigbergk <martinvonz@google.com>
parents: 38621
diff changeset
  1862
  +++ $TESTTMP/anothertests/cases/test-cases-advanced-cases.t#casewith_-.chars.err
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1863
  @@ -1,3 +1,3 @@
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1864
   #testcases simple case-with-dashes casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1865
     $ echo $TESTCASE
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1866
  -  simple
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1867
  +  casewith_-.chars
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1868
  
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1869
  ERROR: test-cases-advanced-cases.t#casewith_-.chars output changed
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1870
  !
38290
b5651ae53127 run-tests: restrict the test cases allowed characters
Boris Feld <boris.feld@octobus.net>
parents: 38245
diff changeset
  1871
  Failed test-cases-advanced-cases.t#casewith_-.chars: output changed
38245
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1872
  # Ran 1 tests, 0 skipped, 1 failed.
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1873
  python hash seed: * (glob)
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1874
  [1]
f2e3196a34f9 run-tests: follow-up on the test-case format
Boris Feld <boris.feld@octobus.net>
parents: 38223
diff changeset
  1875
35069
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1876
Test automatic pattern replacement
38222
507bdc40bb17 run-tests: add support for running specific test cases
Boris Feld <boris.feld@octobus.net>
parents: 37846
diff changeset
  1877
==================================
35069
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1878
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1879
  $ cat << EOF >> common-pattern.py
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1880
  > substitutions = [
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1881
  >     (br'foo-(.*)\\b',
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1882
  >      br'\$XXX=\\1\$'),
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1883
  >     (br'bar\\n',
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1884
  >      br'\$YYY$\\n'),
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1885
  > ]
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1886
  > EOF
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1887
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1888
  $ cat << EOF >> test-substitution.t
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1889
  >   $ echo foo-12
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1890
  >   \$XXX=12$
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1891
  >   $ echo foo-42
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1892
  >   \$XXX=42$
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1893
  >   $ echo bar prior
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1894
  >   bar prior
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1895
  >   $ echo lastbar
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1896
  >   last\$YYY$
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1897
  >   $ echo foo-bar foo-baz
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1898
  > EOF
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1899
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1900
  $ rt test-substitution.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1901
  running 1 tests using 1 parallel processes 
35069
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1902
  
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1903
  --- $TESTTMP/anothertests/cases/test-substitution.t
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1904
  +++ $TESTTMP/anothertests/cases/test-substitution.t.err
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1905
  @@ -7,3 +7,4 @@
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1906
     $ echo lastbar
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1907
     last$YYY$
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1908
     $ echo foo-bar foo-baz
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1909
  +  $XXX=bar foo-baz$
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1910
  
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1911
  ERROR: test-substitution.t output changed
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1912
  !
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1913
  Failed test-substitution.t: output changed
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1914
  # Ran 1 tests, 0 skipped, 1 failed.
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1915
  python hash seed: * (glob)
4fb489a998c9 run-tests: allow to register any arbitrary pattern for replacement
Boris Feld <boris.feld@octobus.net>
parents: 34969
diff changeset
  1916
  [1]
35189
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1917
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1918
--extra-config-opt works
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1919
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1920
  $ cat << EOF >> test-config-opt.t
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1921
  >   $ hg init test-config-opt
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1922
  >   $ hg -R test-config-opt purge
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1923
  > EOF
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1924
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1925
  $ rt --extra-config-opt extensions.purge= test-config-opt.t
40244
1039404c5e1d run-tests: print number of tests and parallel process count
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
  1926
  running 1 tests using 1 parallel processes 
35189
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1927
  .
073843b5e353 run-tests: make --extra-config-opt work with Python 3
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35187
diff changeset
  1928
  # Ran 1 tests, 0 skipped, 0 failed.