MCPcopy Index your code
hub / github.com/python/cpython / do_test_match_getitem

Method do_test_match_getitem

Lib/test/test_re.py:567–607  ·  view source on GitHub ↗
(self, match_fn)

Source from the content-addressed store, hash-verified

565 self.assertEqual(m.group(Index(2), Index(1)), ('b', 'a'))
566
567 def do_test_match_getitem(self, match_fn):
568 m = match_fn('a')
569 self.assertEqual(m['a1'], 'a')
570 self.assertEqual(m['b2'], None)
571 self.assertEqual(m['c3'], None)
572 self.assertEqual('a1={a1} b2={b2} c3={c3}'.format_map(m), 'a1=a b2=None c3=None')
573 self.assertEqual(m[0], 'a')
574 self.assertEqual(m[1], 'a')
575 self.assertEqual(m[2], None)
576 self.assertEqual(m[3], None)
577 with self.assertRaisesRegex(IndexError, 'no such group'):
578 m['X']
579 with self.assertRaisesRegex(IndexError, 'no such group'):
580 m[-1]
581 with self.assertRaisesRegex(IndexError, 'no such group'):
582 m[4]
583 with self.assertRaisesRegex(IndexError, 'no such group'):
584 m[0, 1]
585 with self.assertRaisesRegex(IndexError, 'no such group'):
586 m[(0,)]
587 with self.assertRaisesRegex(IndexError, 'no such group'):
588 m[(0, 1)]
589 with self.assertRaisesRegex(IndexError, 'no such group'):
590 'a1={a2}'.format_map(m)
591
592 m = match_fn('ac')
593 self.assertEqual(m['a1'], 'a')
594 self.assertEqual(m['b2'], None)
595 self.assertEqual(m['c3'], 'c')
596 self.assertEqual('a1={a1} b2={b2} c3={c3}'.format_map(m), 'a1=a b2=None c3=c')
597 self.assertEqual(m[0], 'ac')
598 self.assertEqual(m[1], 'a')
599 self.assertEqual(m[2], None)
600 self.assertEqual(m[3], 'c')
601
602 # Cannot assign.
603 with self.assertRaises(TypeError):
604 m[0] = 1
605
606 # No len().
607 self.assertRaises(TypeError, len, m)
608
609 def test_match_getitem(self):
610 pat = re.compile('(?:(?P<a1>a)|(?P<b2>b))(?P<c3>c)?')

Callers 2

test_match_getitemMethod · 0.95

Calls 4

format_mapMethod · 0.80
assertRaisesRegexMethod · 0.80
assertEqualMethod · 0.45
assertRaisesMethod · 0.45

Tested by

no test coverage detected