tests: fix deprecation warning about regex flags not at beginning of expr
This may only show up when running the tests under python3.6+. Currently the
only test that does this is test-patchbomb-tls.t, and it only uses (?i), so
that's all that's handled at the moment.
Differential Revision: https://phab.mercurial-scm.org/D7552
--- a/tests/run-tests.py Thu Dec 05 13:48:36 2019 -0800
+++ b/tests/run-tests.py Thu Dec 05 14:01:26 2019 -0800
@@ -1973,7 +1973,11 @@
@staticmethod
def rematch(el, l):
try:
- el = b'(?:' + el + b')'
+ # parse any flags at the beginning of the regex. Only 'i' is
+ # supported right now, but this should be easy to extend.
+ flags, el = re.match(br'^(\(\?i\))?(.*)', el).groups()[0:2]
+ flags = flags or b''
+ el = flags + b'(?:' + el + b')'
# use \Z to ensure that the regex matches to the end of the string
if os.name == 'nt':
return re.match(el + br'\r?\n\Z', l)