diff options
author | Damien George <damien.p.george@gmail.com> | 2014-04-02 14:13:26 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-04-02 14:13:26 +0100 |
commit | 93b7faa29a647c233a7ee2cf292c657e09753824 (patch) | |
tree | 772a9beb4fc6efcc041f0650d7d9ceed8e8f01ed /tests/basics/class-getattr.py | |
parent | e4c834fc1ef5459c0a1f8124deac8fab72e73819 (diff) | |
download | micropython-93b7faa29a647c233a7ee2cf292c657e09753824.tar.gz micropython-93b7faa29a647c233a7ee2cf292c657e09753824.zip |
py: Factor out static/class method unwrapping code; add tests.
Diffstat (limited to 'tests/basics/class-getattr.py')
-rw-r--r-- | tests/basics/class-getattr.py | 16 |
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__ |