summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/class-getattr.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/class-getattr.py')
-rw-r--r--tests/basics/class-getattr.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/basics/class-getattr.py b/tests/basics/class-getattr.py
new file mode 100644
index 0000000000..1f875ce538
--- /dev/null
+++ b/tests/basics/class-getattr.py
@@ -0,0 +1,16 @@
+# test that __getattr__, __getattrribute__ and instance members don't override builtins
+class C:
+ def __init__(self):
+ self.__add__ = lambda: print('member __add__')
+ def __add__(self, x):
+ print('__add__')
+ def __getattr__(self, attr):
+ print('__getattr__', attr)
+ return None
+ def __getattrribute__(self, attr):
+ print('__getattrribute__', attr)
+ return None
+
+c = C()
+c.__add__
+c + 1 # should call __add__