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

Method test_replace

Lib/test/string_tests.py:638–813  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

636 self.checkraises(ValueError, 'hello', 'rsplit', '', 0)
637
638 def test_replace(self):
639 EQ = self.checkequal
640
641 # Operations on the empty string
642 EQ("", "", "replace", "", "")
643 EQ("A", "", "replace", "", "A")
644 EQ("", "", "replace", "A", "")
645 EQ("", "", "replace", "A", "A")
646 EQ("", "", "replace", "", "", 100)
647 EQ("A", "", "replace", "", "A", 100)
648 EQ("", "", "replace", "", "", sys.maxsize)
649
650 # interleave (from=="", 'to' gets inserted everywhere)
651 EQ("A", "A", "replace", "", "")
652 EQ("*A*", "A", "replace", "", "*")
653 EQ("*1A*1", "A", "replace", "", "*1")
654 EQ("*-#A*-#", "A", "replace", "", "*-#")
655 EQ("*-A*-A*-", "AA", "replace", "", "*-")
656 EQ("*-A*-A*-", "AA", "replace", "", "*-", -1)
657 EQ("*-A*-A*-", "AA", "replace", "", "*-", sys.maxsize)
658 EQ("*-A*-A*-", "AA", "replace", "", "*-", 4)
659 EQ("*-A*-A*-", "AA", "replace", "", "*-", 3)
660 EQ("*-A*-A", "AA", "replace", "", "*-", 2)
661 EQ("*-AA", "AA", "replace", "", "*-", 1)
662 EQ("AA", "AA", "replace", "", "*-", 0)
663
664 # single character deletion (from=="A", to=="")
665 EQ("", "A", "replace", "A", "")
666 EQ("", "AAA", "replace", "A", "")
667 EQ("", "AAA", "replace", "A", "", -1)
668 EQ("", "AAA", "replace", "A", "", sys.maxsize)
669 EQ("", "AAA", "replace", "A", "", 4)
670 EQ("", "AAA", "replace", "A", "", 3)
671 EQ("A", "AAA", "replace", "A", "", 2)
672 EQ("AA", "AAA", "replace", "A", "", 1)
673 EQ("AAA", "AAA", "replace", "A", "", 0)
674 EQ("", "AAAAAAAAAA", "replace", "A", "")
675 EQ("BCD", "ABACADA", "replace", "A", "")
676 EQ("BCD", "ABACADA", "replace", "A", "", -1)
677 EQ("BCD", "ABACADA", "replace", "A", "", sys.maxsize)
678 EQ("BCD", "ABACADA", "replace", "A", "", 5)
679 EQ("BCD", "ABACADA", "replace", "A", "", 4)
680 EQ("BCDA", "ABACADA", "replace", "A", "", 3)
681 EQ("BCADA", "ABACADA", "replace", "A", "", 2)
682 EQ("BACADA", "ABACADA", "replace", "A", "", 1)
683 EQ("ABACADA", "ABACADA", "replace", "A", "", 0)
684 EQ("BCD", "ABCAD", "replace", "A", "")
685 EQ("BCD", "ABCADAA", "replace", "A", "")
686 EQ("BCD", "BCD", "replace", "A", "")
687 EQ("*************", "*************", "replace", "A", "")
688 EQ("^A^", "^"+"A"*1000+"^", "replace", "A", "", 999)
689
690 # substring deletion (from=="the", to=="")
691 EQ("", "the", "replace", "the", "")
692 EQ("ater", "theater", "replace", "the", "")
693 EQ("", "thethe", "replace", "the", "")
694 EQ("", "thethethethe", "replace", "the", "")
695 EQ("aaaa", "theatheatheathea", "replace", "the", "")

Callers

nothing calls this directly

Calls 2

checkequalMethod · 0.95
checkraisesMethod · 0.95

Tested by

no test coverage detected