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

This commit is contained in:
Paul Sokolovsky 2017-07-09 13:32:17 +03:00
parent bfa68ef6b2
commit b2979023ac
2 changed files with 15 additions and 15 deletions

View File

@ -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)

View File

@ -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)