MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_replace

Method test_replace

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

Source from the content-addressed store, hash-verified

592 self.checkraises(ValueError, 'hello', 'rsplit', '', 0)
593
594 def test_replace(self):
595 EQ = self.checkequal
596
597 # Operations on the empty string
598 EQ("", "", "replace", "", "")
599 EQ("A", "", "replace", "", "A")
600 EQ("", "", "replace", "A", "")
601 EQ("", "", "replace", "A", "A")
602 EQ("", "", "replace", "", "", 100)
603 EQ("A", "", "replace", "", "A", 100)
604 EQ("", "", "replace", "", "", sys.maxsize)
605
606 # interleave (from=="", 'to' gets inserted everywhere)
607 EQ("A", "A", "replace", "", "")
608 EQ("*A*", "A", "replace", "", "*")
609 EQ("*1A*1", "A", "replace", "", "*1")
610 EQ("*-#A*-#", "A", "replace", "", "*-#")
611 EQ("*-A*-A*-", "AA", "replace", "", "*-")
612 EQ("*-A*-A*-", "AA", "replace", "", "*-", -1)
613 EQ("*-A*-A*-", "AA", "replace", "", "*-", sys.maxsize)
614 EQ("*-A*-A*-", "AA", "replace", "", "*-", 4)
615 EQ("*-A*-A*-", "AA", "replace", "", "*-", 3)
616 EQ("*-A*-A", "AA", "replace", "", "*-", 2)
617 EQ("*-AA", "AA", "replace", "", "*-", 1)
618 EQ("AA", "AA", "replace", "", "*-", 0)
619
620 # single character deletion (from=="A", to=="")
621 EQ("", "A", "replace", "A", "")
622 EQ("", "AAA", "replace", "A", "")
623 EQ("", "AAA", "replace", "A", "", -1)
624 EQ("", "AAA", "replace", "A", "", sys.maxsize)
625 EQ("", "AAA", "replace", "A", "", 4)
626 EQ("", "AAA", "replace", "A", "", 3)
627 EQ("A", "AAA", "replace", "A", "", 2)
628 EQ("AA", "AAA", "replace", "A", "", 1)
629 EQ("AAA", "AAA", "replace", "A", "", 0)
630 EQ("", "AAAAAAAAAA", "replace", "A", "")
631 EQ("BCD", "ABACADA", "replace", "A", "")
632 EQ("BCD", "ABACADA", "replace", "A", "", -1)
633 EQ("BCD", "ABACADA", "replace", "A", "", sys.maxsize)
634 EQ("BCD", "ABACADA", "replace", "A", "", 5)
635 EQ("BCD", "ABACADA", "replace", "A", "", 4)
636 EQ("BCDA", "ABACADA", "replace", "A", "", 3)
637 EQ("BCADA", "ABACADA", "replace", "A", "", 2)
638 EQ("BACADA", "ABACADA", "replace", "A", "", 1)
639 EQ("ABACADA", "ABACADA", "replace", "A", "", 0)
640 EQ("BCD", "ABCAD", "replace", "A", "")
641 EQ("BCD", "ABCADAA", "replace", "A", "")
642 EQ("BCD", "BCD", "replace", "A", "")
643 EQ("*************", "*************", "replace", "A", "")
644 EQ("^A^", "^"+"A"*1000+"^", "replace", "A", "", 999)
645
646 # substring deletion (from=="the", to=="")
647 EQ("", "the", "replace", "the", "")
648 EQ("ater", "theater", "replace", "the", "")
649 EQ("", "thethe", "replace", "the", "")
650 EQ("", "thethethethe", "replace", "the", "")
651 EQ("aaaa", "theatheatheathea", "replace", "the", "")

Callers

nothing calls this directly

Calls 2

checkequalMethod · 0.95
checkraisesMethod · 0.95

Tested by

no test coverage detected