Index: Lib/test/test_re.py =================================================================== --- Lib/test/test_re.py (revision 87986) +++ Lib/test/test_re.py (working copy) @@ -412,30 +412,32 @@ self.assertEqual(re.search("a\s", "a ").group(0), "a ") def test_re_escape(self): - p="" - self.assertEqual(re.escape(p), p) - for i in range(0, 256): - p = p + chr(i) - self.assertEqual(re.match(re.escape(chr(i)), chr(i)) is not None, - True) - self.assertEqual(re.match(re.escape(chr(i)), chr(i)).span(), (0,1)) + p = "" + for c in {'\0', '_', '!', '\t', p}: + self.assertEqual(re.escape(c), c) + for i in range(256): + c = chr(i) + p += chr(i) + self.assertIsNotNone(re.match(re.escape(c), c)) + self.assertEqual(re.match(re.escape(c), c).span(), (0, 1)) - pat=re.compile(re.escape(p)) - self.assertEqual(pat.match(p) is not None, True) - self.assertEqual(pat.match(p).span(), (0,256)) + pat = re.compile(re.escape(p)) + self.assertIsNotNone(pat.match(p)) + self.assertEqual(pat.match(p).span(), (0, 256)) def test_re_escape_byte(self): - p=b"" - self.assertEqual(re.escape(p), p) - for i in range(0, 256): + p = b"" + for b in {b'\0', b'_', b'!', b'\t', p}: + self.assertEqual(re.escape(b), b) + for i in range(256): b = bytes([i]) p += b - self.assertEqual(re.match(re.escape(b), b) is not None, True) - self.assertEqual(re.match(re.escape(b), b).span(), (0,1)) + self.assertIsNotNone(re.match(re.escape(b), b)) + self.assertEqual(re.match(re.escape(b), b).span(), (0, 1)) - pat=re.compile(re.escape(p)) - self.assertEqual(pat.match(p) is not None, True) - self.assertEqual(pat.match(p).span(), (0,256)) + pat = re.compile(re.escape(p)) + self.assertIsNotNone(pat.match(p)) + self.assertEqual(pat.match(p).span(), (0, 256)) def pickle_test(self, pickle): oldpat = re.compile('a(?:b|(c|e){1,2}?|d)+?(.)')