3 from cStringIO
import StringIO
5 from test
import test_support
7 from test
.pickletester
import AbstractPickleTests
8 from test
.pickletester
import AbstractPickleModuleTests
9 from test
.pickletester
import AbstractPersistentPicklerTests
11 class PickleTests(AbstractPickleTests
, AbstractPickleModuleTests
):
13 def dumps(self
, arg
, proto
=0, fast
=0):
15 return pickle
.dumps(arg
, proto
)
19 return pickle
.loads(buf
)
24 class PicklerTests(AbstractPickleTests
):
28 def dumps(self
, arg
, proto
=0, fast
=0):
30 p
= pickle
.Pickler(f
, proto
)
39 u
= pickle
.Unpickler(f
)
42 class PersPicklerTests(AbstractPersistentPicklerTests
):
44 def dumps(self
, arg
, proto
=0, fast
=0):
45 class PersPickler(pickle
.Pickler
):
46 def persistent_id(subself
, obj
):
47 return self
.persistent_id(obj
)
49 p
= PersPickler(f
, proto
)
57 class PersUnpickler(pickle
.Unpickler
):
58 def persistent_load(subself
, obj
):
59 return self
.persistent_load(obj
)
65 loader
= unittest
.TestLoader()
66 suite
= unittest
.TestSuite()
67 suite
.addTest(loader
.loadTestsFromTestCase(PickleTests
))
68 suite
.addTest(loader
.loadTestsFromTestCase(PicklerTests
))
69 suite
.addTest(loader
.loadTestsFromTestCase(PersPicklerTests
))
70 test_support
.run_suite(suite
)
71 test_support
.run_doctest(pickle
)
73 if __name__
== "__main__":