Skip to content

Commit

Permalink
Add test for typing alias in isinstance calls (#5089)
Browse files Browse the repository at this point in the history
  • Loading branch information
cdce8p committed Oct 7, 2021
1 parent 04fa427 commit 2a343e8
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 0 deletions.
5 changes: 5 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,11 @@ Release date: TBA

Closes #5048

* Fix false-positive ``isinstance-second-argument-not-valid-type`` with ``typing.Callable``.

Closes #3507
Closes #5087

* ``TypingChecker``

* Fix false-negative for ``deprecated-typing-alias`` and ``consider-using-alias``
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
"""
https://github.com/PyCQA/pylint/issues/3507
False-positive 'isinstance-second-argument-not-valid-type'
for typing aliases in 'isinstance' calls.
"""
import collections
import collections.abc
import typing

isinstance(42, typing.Dict)
isinstance(42, typing.Counter)
isinstance(42, typing.Collection)
isinstance(42, typing.Iterator)
isinstance(42, typing.Tuple)
isinstance(42, typing.Callable)
isinstance(42, typing.Type)


# For comparison - also valid calls
isinstance(42, dict)
isinstance(42, collections.Counter)
isinstance(42, collections.abc.Collection)
isinstance(42, collections.abc.Iterator)
isinstance(42, tuple)
isinstance(42, collections.abc.Callable)
isinstance(42, type)
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[testoptions]
min_pyver=3.7

0 comments on commit 2a343e8

Please sign in to comment.