diff options
| author | Paul Sokolovsky | 2014-05-18 20:42:28 +0300 |
|---|---|---|
| committer | Paul Sokolovsky | 2014-05-19 21:56:07 +0300 |
| commit | 66ab571ccabb36250b810ee3a6d1e962b9412914 (patch) | |
| tree | 8693650b850f9a097565976f867b5f885c179301 /tests/basics/subclass-native2-list.py | |
| parent | 13684fd60b3f75956564fd09711cb93dcb6648fd (diff) | |
tests: Update subclass-native2.py for __new__/__init__ refactor.
Now case of subclassing tuple works, and list is broken, see comments.
Diffstat (limited to 'tests/basics/subclass-native2-list.py')
| -rw-r--r-- | tests/basics/subclass-native2-list.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/basics/subclass-native2-list.py b/tests/basics/subclass-native2-list.py new file mode 100644 index 000000000..9ad0b77ef --- /dev/null +++ b/tests/basics/subclass-native2-list.py @@ -0,0 +1,26 @@ +class Base1: + def __init__(self, *args): + print("Base1.__init__", args) + +class Clist1(Base1, list): + pass + +a = Clist1() +print(len(a)) +# Not compliant - list assignment should happen in list.__init__, which is not called +# because there's Base1.__init__, but we assign in list.__new__ +#a = Clist1([1, 2, 3]) +#print(len(a)) + +print("---") + +class Clist2(list, Base1): + pass + +# Not compliant - should call list.__init__, but we don't have it +#a = Clist2() +#print(len(a)) + +# Not compliant - should call list.__init__, but we don't have it +#a = Clist2([1, 2, 3]) +#print(len(a)) |
