diff options
author | Nikita Sobolev <mail@sobolevn.me> | 2022-02-19 01:53:29 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-19 01:53:29 (GMT) |
commit | 395029b0bd343648b4da8044c7509672ea768775 (patch) | |
tree | cdbf8b86c5bead4d8315c100a7f732f92902b817 /Lib/test/ann_module8.py | |
parent | f80a97b492f41afd3c42bb2bd6da7b2828dca215 (diff) | |
download | cpython-395029b0bd343648b4da8044c7509672ea768775.zip cpython-395029b0bd343648b4da8044c7509672ea768775.tar.gz cpython-395029b0bd343648b4da8044c7509672ea768775.tar.bz2 |
bpo-46571: improve `typing.no_type_check` to skip foreign objects (GH-31042)
There are several changes:
1. We now don't explicitly check for any base / sub types, because new name check covers it
2. I've also checked that `no_type_check` do not modify foreign functions. It was the same as with `type`s
3. I've also covered `except TypeError` in `no_type_check` with a simple test case, it was not covered at all
4. I also felt like adding `lambda` test is a good idea: because `lambda` is a bit of both in class bodies: a function and an assignment
<!-- issue-number: [bpo-46571](https://bugs.python.org/issue46571) -->
https://bugs.python.org/issue46571
<!-- /issue-number -->
Diffstat (limited to 'Lib/test/ann_module8.py')
-rw-r--r-- | Lib/test/ann_module8.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Lib/test/ann_module8.py b/Lib/test/ann_module8.py new file mode 100644 index 0000000..bd03148 --- /dev/null +++ b/Lib/test/ann_module8.py @@ -0,0 +1,10 @@ +# Test `@no_type_check`, +# see https://bugs.python.org/issue46571 + +class NoTypeCheck_Outer: + class Inner: + x: int + + +def NoTypeCheck_function(arg: int) -> int: + ... |