summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorKirill Podoprigora <kirill.bast9@mail.ru>2024-08-16 07:14:53 (GMT)
committerGitHub <noreply@github.com>2024-08-16 07:14:53 (GMT)
commit786cac0c64dc156dfee817e87f15ae56b7e3ed00 (patch)
tree0071c2b4f6316cc423951e47dfd372ce445be1c4 /Lib/test
parentf84cce6f2588c6437d69a30856d7c4ba00b70ae0 (diff)
downloadcpython-786cac0c64dc156dfee817e87f15ae56b7e3ed00.zip
cpython-786cac0c64dc156dfee817e87f15ae56b7e3ed00.tar.gz
cpython-786cac0c64dc156dfee817e87f15ae56b7e3ed00.tar.bz2
gh-123046: Fix regexp to catch cases where the module name is omitted from the weakref repr (#123047)
Co-authored-by: sobolevn <mail@sobolevn.me>
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_weakref.py31
1 files changed, 19 insertions, 12 deletions
diff --git a/Lib/test/test_weakref.py b/Lib/test/test_weakref.py
index 2b9b2a0..023df68 100644
--- a/Lib/test/test_weakref.py
+++ b/Lib/test/test_weakref.py
@@ -123,10 +123,12 @@ class ReferencesTestCase(TestBase):
def test_ref_repr(self):
obj = C()
ref = weakref.ref(obj)
- self.assertRegex(repr(ref),
- rf"<weakref at 0x[0-9a-fA-F]+; "
- rf"to '{C.__module__}.{C.__qualname__}' "
- rf"at 0x[0-9a-fA-F]+>")
+ regex = (
+ rf"<weakref at 0x[0-9a-fA-F]+; "
+ rf"to '{'' if __name__ == '__main__' else C.__module__ + '.'}{C.__qualname__}' "
+ rf"at 0x[0-9a-fA-F]+>"
+ )
+ self.assertRegex(repr(ref), regex)
obj = None
gc_collect()
@@ -141,10 +143,13 @@ class ReferencesTestCase(TestBase):
obj2 = WithName()
ref2 = weakref.ref(obj2)
- self.assertRegex(repr(ref2),
- rf"<weakref at 0x[0-9a-fA-F]+; "
- rf"to '{WithName.__module__}.{WithName.__qualname__}' "
- rf"at 0x[0-9a-fA-F]+ \(custom_name\)>")
+ regex = (
+ rf"<weakref at 0x[0-9a-fA-F]+; "
+ rf"to '{'' if __name__ == '__main__' else WithName.__module__ + '.'}"
+ rf"{WithName.__qualname__}' "
+ rf"at 0x[0-9a-fA-F]+ +\(custom_name\)>"
+ )
+ self.assertRegex(repr(ref2), regex)
def test_repr_failure_gh99184(self):
class MyConfig(dict):
@@ -229,10 +234,12 @@ class ReferencesTestCase(TestBase):
def test_proxy_repr(self):
obj = C()
ref = weakref.proxy(obj, self.callback)
- self.assertRegex(repr(ref),
- rf"<weakproxy at 0x[0-9a-fA-F]+; "
- rf"to '{C.__module__}.{C.__qualname__}' "
- rf"at 0x[0-9a-fA-F]+>")
+ regex = (
+ rf"<weakproxy at 0x[0-9a-fA-F]+; "
+ rf"to '{'' if __name__ == '__main__' else C.__module__ + '.'}{C.__qualname__}' "
+ rf"at 0x[0-9a-fA-F]+>"
+ )
+ self.assertRegex(repr(ref), regex)
obj = None
gc_collect()