]> granicus.if.org Git - python/commitdiff
copy a few tests from test_sre
authorSkip Montanaro <skip@pobox.com>
Fri, 25 Apr 2003 14:12:40 +0000 (14:12 +0000)
committerSkip Montanaro <skip@pobox.com>
Fri, 25 Apr 2003 14:12:40 +0000 (14:12 +0000)
Lib/test/test_re.py

index 51ab02df61821adf9a7e9aed62bf43dcee1b427b..ae61b26f4ac91118d437a68e77cc6d9ed3a7e855 100644 (file)
@@ -186,6 +186,21 @@ class ReTests(unittest.TestCase):
         else:
             self.fail("re.match('(x)*', 50000*'x') should have failed")
 
+    def test_sre_character_literals(self):
+        for i in [0, 8, 16, 32, 64, 127, 128, 255]:
+            self.assertNotEqual(re.match(r"\%03o" % i, chr(i)), None)
+            self.assertNotEqual(re.match(r"\%03o0" % i, chr(i)+"0"), None)
+            self.assertNotEqual(re.match(r"\%03o8" % i, chr(i)+"8"), None)
+            self.assertNotEqual(re.match(r"\x%02x" % i, chr(i)), None)
+            self.assertNotEqual(re.match(r"\x%02x0" % i, chr(i)+"0"), None)
+            self.assertNotEqual(re.match(r"\x%02xz" % i, chr(i)+"z"), None)
+        self.assertRaises(re.error, re.match, "\911", "")
+
+    def test_bug_113254(self):
+        self.assertEqual(re.match(r'(a)|(b)', 'b').start(1), -1)
+        self.assertEqual(re.match(r'(a)|(b)', 'b').end(1), -1)
+        self.assertEqual(re.match(r'(a)|(b)', 'b').span(1), (-1, -1))
+
 def run_re_tests():
     from test.re_tests import benchmarks, tests, SUCCEED, FAIL, SYNTAX_ERROR
     if verbose: