[Python-checkins] python/dist/src/Lib/test test_deque.py,1.19,1.20

rhettinger at users.sourceforge.net rhettinger at users.sourceforge.net
Sat Mar 19 01:01:02 CET 2005


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17096/Lib/test

Modified Files:
	test_deque.py 
Log Message:
Apply remove's mutation test after every equality test.

Index: test_deque.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_deque.py,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- test_deque.py	18 Mar 2005 21:20:19 -0000	1.19
+++ test_deque.py	19 Mar 2005 00:00:51 -0000	1.20
@@ -19,11 +19,12 @@
         raise RuntimeError
 
 class MutateCmp:
-    def __init__(self, deque):
+    def __init__(self, deque, result):
         self.deque = deque
+        self.result = result
     def __eq__(self, other):
         self.deque.clear()
-        return True
+        return self.result
 
 class TestBasic(unittest.TestCase):
 
@@ -226,11 +227,11 @@
             self.assert_(x is y)
 
         # Handle evil mutator
-        d = deque(['ab'])
-        d.extend([MutateCmp(d), 'c'])
-        e = deque(d)
-        self.assertRaises(IndexError, d.remove, 'c')
-        self.assertEqual(d, deque())
+        for match in (True, False):
+            d = deque(['ab'])
+            d.extend([MutateCmp(d, match), 'c'])
+            self.assertRaises(IndexError, d.remove, 'c')
+            self.assertEqual(d, deque())
 
     def test_repr(self):
         d = deque(xrange(200))



More information about the Python-checkins mailing list