Mercurial > hg-stable
changeset 17778:80fe64581f3a
run-tests: make it possible to combine (esc) with (glob) and (re)
This makes it possible to combine the annotations ... if done in the right
order.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Sun, 14 Oct 2012 18:30:42 +0200 |
parents | af7c6bc48d8d |
children | f38e2873b48d |
files | tests/run-tests.py tests/test-run-tests.t |
diffstat | 2 files changed, 20 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py Mon Oct 15 02:33:12 2012 +0200 +++ b/tests/run-tests.py Sun Oct 14 18:30:42 2012 +0200 @@ -526,14 +526,14 @@ def linematch(el, l): if el == l: # perfect match (fast) return True - if (el and - (el.endswith(" (re)\n") and rematch(el[:-6], l) or - el.endswith(" (glob)\n") and globmatch(el[:-8], l) or - el.endswith(" (esc)\n") and - (el[:-7].decode('string-escape') + '\n' == l or - os.name == 'nt' and - el[:-7].decode('string-escape') + '\n' == l))): - return True + if el: + if el.endswith(" (esc)\n"): + el = el[:-7].decode('string-escape') + '\n' + if el == l or os.name == 'nt' and el[:-1] + '\r\n' == l: + return True + if (el.endswith(" (re)\n") and rematch(el[:-6], l) or + el.endswith(" (glob)\n") and globmatch(el[:-8], l)): + return True return False def tsttest(test, wd, options, replacements):
--- a/tests/test-run-tests.t Mon Oct 15 02:33:12 2012 +0200 +++ b/tests/test-run-tests.t Sun Oct 14 18:30:42 2012 +0200 @@ -62,6 +62,18 @@ crcrlf\r (esc) #endif +Combining esc with other markups - and handling lines ending with \r instead of \n: + + $ printf 'foo/bar\r' + foo/bar\r (no-eol) (glob) (esc) +#if windows + $ printf 'foo\\bar\r' + foo/bar\r (no-eol) (glob) (esc) +#endif + $ printf 'foo/bar\rfoo/bar\r' + foo.bar\r \(no-eol\) (re) (esc) + foo.bar\r \(no-eol\) (re) + testing hghave $ "$TESTDIR/hghave" true