From: Douglas Bagnall Date: Sat, 10 Feb 2018 22:59:40 +0000 (+1300) Subject: python.subunit: add assertRegexpMatches for Python 2.6 X-Git-Tag: tevent-0.9.36~99 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=92ec01dcf080901eb4c208b208651ae03e77f538;p=thirdparty%2Fsamba.git python.subunit: add assertRegexpMatches for Python 2.6 This is used in python/samba/tests/samba_tool/provision_password_check.py Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett --- diff --git a/python/samba/tests/__init__.py b/python/samba/tests/__init__.py index c4d24fa913f..b6293dff757 100644 --- a/python/samba/tests/__init__.py +++ b/python/samba/tests/__init__.py @@ -31,9 +31,10 @@ import subprocess import sys import tempfile import unittest +import re import samba.auth import samba.dcerpc.base -from samba.compat import PY3 +from samba.compat import PY3, text_type if not PY3: # Py2 only from samba.samdb import SamDB @@ -161,6 +162,14 @@ class TestCase(unittest.TestCase): self._cleanups = getattr(self, "_cleanups", []) + [ (fn, args, kwargs)] + def assertRegexpMatches(self, text, regex, msg=None): + # PY3 note: Python 3 will never see this, but we use + # text_type for the benefit of linters. + if isinstance(regex, (str, text_type)): + regex = re.compile(regex) + if not regex.search(text): + self.fail(msg) + def _addSkip(self, result, reason): addSkip = getattr(result, 'addSkip', None) if addSkip is not None: