Christian Ebert <blacktrash@gmx.net> [Thu, 23 Sep 2010 10:33:58 +0200] rev 803
Merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 22 Sep 2010 18:20:47 -0500] rev 802
tests: various fixes for new unified test pattern format
[ original upstream message ]
Brodie Rao <brodie@bitheap.org> [Wed, 22 Sep 2010 16:06:02 -0500] rev 801
tests: add glob matching for unified tests
This adds a " (glob)" marker that works like a simpler version of
(re): "*" is converted to ".*", and "?" is converted to ".".
Both special characters can be escaped using "\", and the backslash
itself can be escaped as well.
Other glob-style syntax, like "**", "[chars]", or "[!chars]", isn't
supported.
[ original upstream message ]
Brodie Rao <brodie@bitheap.org> [Wed, 22 Sep 2010 16:06:00 -0500] rev 800
tests: require regexes in unified tests to be marked with " (re)"
Consider this test:
$ hg glog --template '{rev}:{node|short} "{desc}"\n'
@ 2:20c4f79fd7ac "3"
|
| o 1:38f24201dcab "2"
|/
o 0:2a18120dc1c9 "1"
Because each line beginning with "|" can be compiled as a regular
expression (equivalent to ".*|"), they will match any output.
Similarly:
$ echo foo
The blank output line can be compiled as a regular expression and will
also match any output.
With this patch, none of the above output lines will be matched as
regular expressions. A line must end in " (re)" in order to be matched
as one.
Lines are still matched literally first, so the following will pass:
$ echo 'foo (re)'
foo (re)
[ original upstream message ]
Brodie Rao <brodie@bitheap.org> [Wed, 22 Sep 2010 16:05:59 -0500] rev 799
tests: ensure regexes match to the end of the string
Regular expressions in the test suite are currently written assuming
that you need a trailing ".*" to avoid matching to the end.
Instead of matching regular expressions using "^pattern", this patch
makes matching more restrictive by matching "^pattern$".
[ original upstream message ]
Brodie Rao <brodie@bitheap.org> [Wed, 22 Sep 2010 16:05:59 -0500] rev 798
tests: don't match blank output lines as regexes in unified tests
Currently, the following unified test will pass:
$ echo foo
A blank output line (a line containing just two spaces) will match any
output.
The patch modifies the unified test runner to ignore empty strings
strings when do regular expression matching.
[ original upstream message ]
Brodie Rao <brodie@bitheap.org> [Wed, 22 Sep 2010 16:05:58 -0500] rev 797
tests: improve regexes in unified tests
[ original upstream message ]
Christian Ebert <blacktrash@gmx.net> [Wed, 22 Sep 2010 23:46:57 +0200] rev 796
Merge with stable