tests/cpydiff/core_class_mro: Move under Classes, add workaround.

pull/3207/head
Paul Sokolovsky 2017-07-09 13:32:17 +03:00
rodzic bfa68ef6b2
commit b2979023ac
2 zmienionych plików z 15 dodań i 15 usunięć

Wyświetl plik

@ -0,0 +1,15 @@
"""
categories: Core,Classes
description: Method Resolution Order (MRO) is not compliant with CPython
cause: Depth first non-exhaustive method resolution order
workaround: Avoid complex class hierarchies with multiple inheritance and complex method overrides. Keep in mind that many languages don't support multiple inheritance at all.
"""
class Foo:
def __str__(self):
return "Foo"
class C(tuple, Foo):
pass
t = C((1, 2, 3))
print(t)

Wyświetl plik

@ -1,15 +0,0 @@
"""
categories: Core
description: Method Resolution Order (MRO) is not compliant with CPython
cause: Unknown
workaround: Unknown
"""
class Foo:
def __str__(self):
return "Foo"
class C(tuple, Foo):
pass
t = C((1, 2, 3))
print(t)