diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/basics/del-attr.py | 28 | ||||
-rw-r--r-- | tests/basics/del-name.py | 18 | ||||
-rw-r--r-- | tests/basics/del-subscr.py | 13 |
3 files changed, 59 insertions, 0 deletions
diff --git a/tests/basics/del-attr.py b/tests/basics/del-attr.py new file mode 100644 index 0000000000..501c729ceb --- /dev/null +++ b/tests/basics/del-attr.py @@ -0,0 +1,28 @@ +# del a class attribute + +del C.f +try: + print(C.x) +except AttributeError: + print("AttributeError") +try: + del C.f +except AttributeError: + print("AttributeError") + +# del an instance attribute + +c = C() + +c.x = 1 +print(c.x) + +del c.x +try: + print(c.x) +except AttributeError: + print("AttributeError") +try: + del c.x +except AttributeError: + print("AttributeError") diff --git a/tests/basics/del-name.py b/tests/basics/del-name.py new file mode 100644 index 0000000000..f75a2f5dc6 --- /dev/null +++ b/tests/basics/del-name.py @@ -0,0 +1,18 @@ +# del global + +x = 1 +print(x) +del x +try: + print(x) +except NameError: + print("NameError") +try: + del x +except: # NameError: + # FIXME uPy returns KeyError for this + print("NameError") + +class C: + def f(): + pass diff --git a/tests/basics/del-subscr.py b/tests/basics/del-subscr.py new file mode 100644 index 0000000000..67910c6234 --- /dev/null +++ b/tests/basics/del-subscr.py @@ -0,0 +1,13 @@ +l = [1, 2, 3] +print(l) +del l[0] +print(l) +del l[-1] +print(l) + +d = {1:2, 3:4, 5:6} +del d[1] +del d[3] +print(d) +del d[5] +print(d) |