From: Guido van Rossum Date: Tue, 28 Jan 2003 22:02:31 +0000 (+0000) Subject: Add a test for a list subclass with a __dict__ as well as slots. X-Git-Tag: v2.3c1~2214 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c8d6ef5cd621c39434c22123ab4f63e8084c8446;p=python Add a test for a list subclass with a __dict__ as well as slots. --- diff --git a/Lib/test/pickletester.py b/Lib/test/pickletester.py index cc464a9ff7..36b3702d12 100644 --- a/Lib/test/pickletester.py +++ b/Lib/test/pickletester.py @@ -322,6 +322,20 @@ class AbstractPickleTests(unittest.TestCase): self.assertEqual(x.__dict__, y.__dict__) ## import pickletools ## print +## pickletools.dis(s) + + def test_newobj_list_slots(self): + x = SlotList([1, 2, 3]) + x.foo = 42 + x.bar = "hello" + s = self.dumps(x, 2) + y = self.loads(s) + self.assertEqual(list(x), list(y)) + self.assertEqual(x.__dict__, y.__dict__) + self.assertEqual(x.foo, y.foo) + self.assertEqual(x.bar, y.bar) +## import pickletools +## print ## pickletools.dis(s) class MyTuple(tuple): @@ -330,6 +344,9 @@ class MyTuple(tuple): class MyList(list): pass +class SlotList(MyList): + __slots__ = ["foo"] + class AbstractPickleModuleTests(unittest.TestCase): def test_dump_closed_file(self):