From: Raymond Hettinger Date: Tue, 3 Mar 2009 22:50:04 +0000 (+0000) Subject: Additional test for __reduce__. X-Git-Tag: v3.1a1~38 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b212157465b82e97f5d9e5fdefafe933cb2c0487;p=thirdparty%2FPython%2Fcpython.git Additional test for __reduce__. --- diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py index 60d4e0b6b310..1800becd294f 100644 --- a/Lib/test/test_collections.py +++ b/Lib/test/test_collections.py @@ -728,6 +728,14 @@ class TestOrderedDict(unittest.TestCase): # '!!python/object/apply:__main__.OrderedDict\n- - [a, 1]\n - [b, 2]\n' self.assert_(all(type(pair)==list for pair in od.__reduce__()[1])) + def test_reduce_not_too_fat(self): + # do not save instance dictionary if not needed + pairs = [('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)] + od = OrderedDict(pairs) + self.assertEqual(len(od.__reduce__()), 2) + od.x = 10 + self.assertEqual(len(od.__reduce__()), 3) + def test_repr(self): od = OrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)]) self.assertEqual(repr(od),