From: Fred Drake Date: Wed, 19 Dec 2001 16:54:23 +0000 (+0000) Subject: Add some additional tests that check more proxy behaviors. X-Git-Tag: v2.2.1c1~298 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5935ff07beb0ed2b37dc7a85f04861122eaa5a9a;p=python Add some additional tests that check more proxy behaviors. --- diff --git a/Lib/test/test_weakref.py b/Lib/test/test_weakref.py index 7f4870e187..2ca6a7adb7 100644 --- a/Lib/test/test_weakref.py +++ b/Lib/test/test_weakref.py @@ -1,5 +1,6 @@ import sys import unittest +import UserList import weakref import test_support @@ -149,6 +150,23 @@ class ReferencesTestCase(TestBase): o = C() self.check_proxy(o, weakref.proxy(o)) + L = UserList.UserList() + p = weakref.proxy(L) + self.failIf(p, "proxy for empty UserList should be false") + p.append(12) + self.assertEqual(len(L), 1) + self.failUnless(p, "proxy for non-empty UserList should be true") + p[:] = [2, 3] + self.assertEqual(len(L), 2) + self.assertEqual(len(p), 2) + self.failUnless(3 in p, "proxy didn't support __contains__() properly") + p[1] = 5 + self.assertEqual(L[1], 5) + self.assertEqual(p[1], 5) + L2 = UserList.UserList(L) + p2 = weakref.proxy(L2) + self.assertEqual(p, p2) + def test_callable_proxy(self): o = Callable() ref1 = weakref.proxy(o)