Mercurial > hg-stable
changeset 15414:2a62d7c8aee7
run-tests: pull out unified matching funcs
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 03 Nov 2011 14:51:04 -0500 |
parents | 8e60433e070a |
children | 8c90b3df5bed |
files | tests/run-tests.py |
diffstat | 1 files changed, 27 insertions(+), 27 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py Thu Nov 03 14:48:56 2011 -0500 +++ b/tests/run-tests.py Thu Nov 03 14:51:04 2011 -0500 @@ -521,6 +521,33 @@ def stringescape(s): return escapesub(escapef, s) +def rematch(el, l): + try: + # ensure that the regex matches to the end of the string + return re.match(el + r'\Z', l) + except re.error: + # el is an invalid regex + return False + +def globmatch(el, l): + # The only supported special characters are * and ?. Escaping is + # supported. + i, n = 0, len(el) + res = '' + while i < n: + c = el[i] + i += 1 + if c == '\\' and el[i] in '*?\\': + res += el[i - 1:i + 1] + i += 1 + elif c == '*': + res += '.*' + elif c == '?': + res += '.' + else: + res += re.escape(c) + return rematch(res, l) + def tsttest(test, wd, options, replacements): t = open(test) out = [] @@ -608,33 +635,6 @@ finally: os.remove(name) - def rematch(el, l): - try: - # ensure that the regex matches to the end of the string - return re.match(el + r'\Z', l) - except re.error: - # el is an invalid regex - return False - - def globmatch(el, l): - # The only supported special characters are * and ?. Escaping is - # supported. - i, n = 0, len(el) - res = '' - while i < n: - c = el[i] - i += 1 - if c == '\\' and el[i] in '*?\\': - res += el[i - 1:i + 1] - i += 1 - elif c == '*': - res += '.*' - elif c == '?': - res += '.' - else: - res += re.escape(c) - return rematch(res, l) - # Merge the script output back into a unified test pos = -1