summaryrefslogtreecommitdiff
path: root/tests/basics/builtin_hasattr.py
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-02-07 15:55:52 +1100
committerDamien George <damien.p.george@gmail.com>2018-02-07 15:55:52 +1100
commit1f53ff61fffb4cc9b42ddf7e331e225c1b48b4ff (patch)
tree4a55678c160d57992327301a24df84f1b938734d /tests/basics/builtin_hasattr.py
parentb45c8c17f0f295e919a90659d4c1880a47b228c1 (diff)
tests/basics: Rename remaining tests that are for built-in functions.
For consistency with all of the other tests that are named builtin_XXX.py.
Diffstat (limited to 'tests/basics/builtin_hasattr.py')
-rw-r--r--tests/basics/builtin_hasattr.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/basics/builtin_hasattr.py b/tests/basics/builtin_hasattr.py
new file mode 100644
index 000000000..118a19e57
--- /dev/null
+++ b/tests/basics/builtin_hasattr.py
@@ -0,0 +1,39 @@
+class A:
+
+ var = 132
+
+ def __init__(self):
+ self.var2 = 34
+
+ def meth(self, i):
+ return 42 + i
+
+
+a = A()
+print(hasattr(a, "var"))
+print(hasattr(a, "var2"))
+print(hasattr(a, "meth"))
+print(hasattr(a, "_none_such"))
+print(hasattr(list, "foo"))
+
+class C:
+
+ def __getattr__(self, attr):
+ if attr == "exists":
+ return attr
+ raise AttributeError
+
+c = C()
+print(hasattr(c, "exists"))
+# TODO
+#print(hasattr(c, "doesnt_exist"))
+
+try:
+ hasattr(1, b'123')
+except TypeError:
+ print('TypeError')
+
+try:
+ hasattr(1, 123)
+except TypeError:
+ print('TypeError')