summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_re.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2017-05-09 20:37:14 (GMT)
committerGitHub <noreply@github.com>2017-05-09 20:37:14 (GMT)
commit6d336a027913327fc042b0d758a16724fea27b9c (patch)
treeca511a6c75e340ef3493674b791f05a692e0c9e2 /Lib/test/test_re.py
parentf93234bb8a87855f295d441524e519481ce6ab13 (diff)
downloadcpython-6d336a027913327fc042b0d758a16724fea27b9c.zip
cpython-6d336a027913327fc042b0d758a16724fea27b9c.tar.gz
cpython-6d336a027913327fc042b0d758a16724fea27b9c.tar.bz2
bpo-30285: Optimize case-insensitive matching and searching (#1482)
of regular expressions.
Diffstat (limited to 'Lib/test/test_re.py')
-rw-r--r--Lib/test/test_re.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py
index b5b7cff..3129f7e 100644
--- a/Lib/test/test_re.py
+++ b/Lib/test/test_re.py
@@ -891,15 +891,24 @@ class ReTests(unittest.TestCase):
lo = ord(c.lower())
self.assertEqual(_sre.ascii_tolower(i), lo)
self.assertEqual(_sre.unicode_tolower(i), lo)
+ iscased = c in string.ascii_letters
+ self.assertEqual(_sre.ascii_iscased(i), iscased)
+ self.assertEqual(_sre.unicode_iscased(i), iscased)
for i in list(range(128, 0x1000)) + [0x10400, 0x10428]:
c = chr(i)
self.assertEqual(_sre.ascii_tolower(i), i)
if i != 0x0130:
self.assertEqual(_sre.unicode_tolower(i), ord(c.lower()))
+ iscased = c != c.lower() or c != c.upper()
+ self.assertFalse(_sre.ascii_iscased(i))
+ self.assertEqual(_sre.unicode_iscased(i),
+ c != c.lower() or c != c.upper())
self.assertEqual(_sre.ascii_tolower(0x0130), 0x0130)
self.assertEqual(_sre.unicode_tolower(0x0130), ord('i'))
+ self.assertFalse(_sre.ascii_iscased(0x0130))
+ self.assertTrue(_sre.unicode_iscased(0x0130))
def test_not_literal(self):
self.assertEqual(re.search(r"\s([^a])", " b").group(1), "b")