str.replace(a, a) is now returning str unchanged if a is a
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index 870853e..14d3fa6 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -275,6 +275,12 @@
         self.checkequalnofix('one@two!three!', 'one!two!three!', 'replace', '!', '@', 1)
         self.assertRaises(TypeError, 'replace'.replace, "r", 42)
 
+    @support.cpython_only
+    def test_replace_id(self):
+        a = 'a' # single ascii letters are singletons
+        text = 'abc'
+        self.assertIs(text.replace('a', 'a'), text)
+
     def test_bytes_comparison(self):
         with support.check_warnings():
             warnings.simplefilter('ignore', BytesWarning)