MCPcopy Create free account
hub / github.com/python/cpython / test_sre_character_class_literals

Method test_sre_character_class_literals

Lib/test/test_re.py:1491–1517  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1489 self.checkPatternError(r"\U00110000", r'bad escape \U00110000', 0)
1490
1491 def test_sre_character_class_literals(self):
1492 for i in [0, 8, 16, 32, 64, 127, 128, 255, 256, 0xFFFF, 0x10000, 0x10FFFF]:
1493 if i < 256:
1494 self.assertTrue(re.match(r"[\%o]" % i, chr(i)))
1495 self.assertTrue(re.match(r"[\%o8]" % i, chr(i)))
1496 self.assertTrue(re.match(r"[\%03o]" % i, chr(i)))
1497 self.assertTrue(re.match(r"[\%03o0]" % i, chr(i)))
1498 self.assertTrue(re.match(r"[\%03o8]" % i, chr(i)))
1499 self.assertTrue(re.match(r"[\x%02x]" % i, chr(i)))
1500 self.assertTrue(re.match(r"[\x%02x0]" % i, chr(i)))
1501 self.assertTrue(re.match(r"[\x%02xz]" % i, chr(i)))
1502 if i < 0x10000:
1503 self.assertTrue(re.match(r"[\u%04x]" % i, chr(i)))
1504 self.assertTrue(re.match(r"[\u%04x0]" % i, chr(i)))
1505 self.assertTrue(re.match(r"[\u%04xz]" % i, chr(i)))
1506 self.assertTrue(re.match(r"[\U%08x]" % i, chr(i)))
1507 self.assertTrue(re.match(r"[\U%08x0]" % i, chr(i)+"0"))
1508 self.assertTrue(re.match(r"[\U%08xz]" % i, chr(i)+"z"))
1509 self.checkPatternError(r"[\567]",
1510 r'octal escape value \567 outside of '
1511 r'range 0-0o377', 1)
1512 self.checkPatternError(r"[\911]", r'bad escape \9', 1)
1513 self.checkPatternError(r"[\x1z]", r'incomplete escape \x1', 1)
1514 self.checkPatternError(r"[\u123z]", r'incomplete escape \u123', 1)
1515 self.checkPatternError(r"[\U0001234z]", r'incomplete escape \U0001234', 1)
1516 self.checkPatternError(r"[\U00110000]", r'bad escape \U00110000', 1)
1517 self.assertTrue(re.match(r"[\U0001d49c-\U0001d4b5]", "\U0001d49e"))
1518
1519 def test_sre_byte_literals(self):
1520 for i in [0, 8, 16, 32, 64, 127, 128, 255]:

Callers

nothing calls this directly

Calls 3

checkPatternErrorMethod · 0.95
assertTrueMethod · 0.80
matchMethod · 0.45

Tested by

no test coverage detected