[pypy-svn] r69755 - pypy/trunk/pypy/objspace/std/test

cfbolz at codespeak.net cfbolz at codespeak.net
Mon Nov 30 12:01:44 CET 2009


Author: cfbolz
Date: Mon Nov 30 12:01:43 2009
New Revision: 69755

Modified:
   pypy/trunk/pypy/objspace/std/test/test_inlinedict.py
Log:
Cover anther case that was also fixed by r69752


Modified: pypy/trunk/pypy/objspace/std/test/test_inlinedict.py
==============================================================================
--- pypy/trunk/pypy/objspace/std/test/test_inlinedict.py	(original)
+++ pypy/trunk/pypy/objspace/std/test/test_inlinedict.py	Mon Nov 30 12:01:43 2009
@@ -66,7 +66,7 @@
         assert w_dict2.getitem("hello") == 1
         assert w_dict2.getitem("world") == 2
 
-    def test_setdict_devolves_existing_dict(self):
+    def test_setdict_keeps_previous_dict_working(self):
         obj1 = self.make_obj()
         w_dict1 = obj1.getdict()
         obj2 = self.make_obj()
@@ -81,7 +81,22 @@
         assert obj2.getdictvalue(self.fakespace, "hello") == 4
         assert obj2.getdictvalue(self.fakespace, "world") == 5
 
-
+    def test_setdict_devolves_existing_dict(self):
+        obj1 = self.make_obj()
+        w_dict1 = obj1.getdict()
+        obj2 = self.make_obj()
+        obj2.setdictvalue(self.fakespace, "hello", 6)
+        obj2.setdictvalue(self.fakespace, "world", 7)
+        w_dict2 = obj2.getdict()
+        obj2.setdict(self.space, w_dict1)
+        assert w_dict2.getitem("hello") == 6
+        assert w_dict2.getitem("world") == 7
+        assert obj2.getdictvalue(self.fakespace, "hello") == 1
+        assert obj2.getdictvalue(self.fakespace, "world") == 2
+        obj1.setdictvalue(self.fakespace, "hello", 4)
+        obj1.setdictvalue(self.fakespace, "world", 5)
+        assert obj2.getdictvalue(self.fakespace, "hello") == 4
+        assert obj2.getdictvalue(self.fakespace, "world") == 5
 
     def test_dict_devolves_via_dict(self):
         obj = self.make_obj()



More information about the Pypy-commit mailing list