diff options
Diffstat (limited to 'tests/basics/builtin_setattr.py')
-rw-r--r-- | tests/basics/builtin_setattr.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/basics/builtin_setattr.py b/tests/basics/builtin_setattr.py new file mode 100644 index 000000000..e4acb14ca --- /dev/null +++ b/tests/basics/builtin_setattr.py @@ -0,0 +1,25 @@ +class A: + + var = 132 + + def __init__(self): + self.var2 = 34 + + +a = A() +setattr(a, "var", 123) +setattr(a, "var2", 56) +print(a.var) +print(a.var2) + +try: + setattr(a, b'var3', 1) +except TypeError: + print('TypeError') + +# try setattr on a built-in function +try: + setattr(int, 'to_bytes', 1) +except (AttributeError, TypeError): + # uPy raises AttributeError, CPython raises TypeError + print('AttributeError/TypeError') |