bpo-43988: Add test.support.check_disallow_instantiation by erlend-aasland · Pull Request #25757 · python/cpython
|
|
||
| See bpo-43916. | ||
| """ | ||
| msg = f"cannot create '{tp.__module__}\.{tp.__name__}' instances" |
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should use f"xxx\.xxx" or fr"xxx.xxx". Or maybe use re.escape().
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since these tests are decorated with cpython_only, it should be ok to match the exact string, as produced by Objects/typeobject.c? Just matching the type module/name could in theory generate wrong result; maybe not in practice though.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about setting the match pattern depending on what test.support.check_impl_detail() says?
Enough nitpicking, you can always enhance the code later ;-) I merged your PR, thanks. I guess that the next step is to modify existing tests to use it.
Backport to 3.10? I guess not.
It seems like more changes are coming. Once they all landed into main, maybe write a backport to 3.10 PR including all of them at once (git cherry-pick -x all commits in the right order). Or we can leave 3.10 as it is: it's more up to you.
@pablogsal, should we backport this? grep -r disallow_insta Lib/test | wc -l gives me 14 hits on the 3.10 branch, including the recently backported sqlite3 test.
@pablogsal, should we backport this?
grep -r disallow_insta Lib/test | wc -lgives me 14 hits on the 3.10 branch, including the recently backportedsqlite3test.
I would prefer to backport it, yep
erlend-aasland pushed a commit to erlend-aasland/cpython that referenced this pull request
…thonGH-25757). (cherry picked from commit 4f72526) Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>