]> granicus.if.org Git - python/commitdiff
Add a test case suggested by Guido, where a method is created with the
authorBarry Warsaw <barry@python.org>
Mon, 15 Jan 2001 21:00:02 +0000 (21:00 +0000)
committerBarry Warsaw <barry@python.org>
Mon, 15 Jan 2001 21:00:02 +0000 (21:00 +0000)
new module.

Lib/test/test_funcattrs.py

index f8b471e12088e60e8f21079890e1ee4ea2bf2c62..9d3ec18a2f85f874ced5ab4e44fe9cb61f25aa1c 100644 (file)
@@ -100,3 +100,41 @@ else:
 
 if f2.a.one <> f1.a.one <> F.a.one <> 11:
     raise TestFailed
+
+# im_func may not be a Python method!
+import new
+F.id = new.instancemethod(id, None, F)
+
+eff = F()
+if eff.id() <> id(eff):
+    raise TestFailed
+
+try:
+    F.id.foo
+except AttributeError: pass
+else: raise TestFailed
+
+try:
+    F.id.foo = 12
+except TypeError: pass
+else: raise TestFailed
+
+try:
+    F.id.foo
+except AttributeError: pass
+else: raise TestFailed
+
+try:
+    eff.id.foo
+except AttributeError: pass
+else: raise TestFailed
+
+try:
+    eff.id.foo = 12
+except TypeError: pass
+else: raise TestFailed
+
+try:
+    eff.id.foo
+except AttributeError: pass
+else: raise TestFailed