mirror of
https://github.com/python/cpython
synced 2024-10-14 11:58:12 +00:00
bpo-28556: Add a regression test to typing (GH-15396)
This adds a regression test for the issue found in the Python 2 backport, see https://github.com/python/typing/issues/656 https://bugs.python.org/issue28556
This commit is contained in:
parent
d0cdeaab76
commit
8889627b53
|
@ -961,6 +961,23 @@ def __init__(self, x):
|
|||
self.assertIsInstance(C(1), P)
|
||||
self.assertIsInstance(C(1), PG)
|
||||
|
||||
def test_protocol_checks_after_subscript(self):
|
||||
class P(Protocol[T]): pass
|
||||
class C(P[T]): pass
|
||||
class Other1: pass
|
||||
class Other2: pass
|
||||
CA = C[Any]
|
||||
|
||||
self.assertNotIsInstance(Other1(), C)
|
||||
self.assertNotIsSubclass(Other2, C)
|
||||
|
||||
class D1(C[Any]): pass
|
||||
class D2(C[Any]): pass
|
||||
CI = C[int]
|
||||
|
||||
self.assertIsInstance(D1(), C)
|
||||
self.assertIsSubclass(D2, C)
|
||||
|
||||
def test_protocols_support_register(self):
|
||||
@runtime_checkable
|
||||
class P(Protocol):
|
||||
|
|
Loading…
Reference in a new issue