# test_pickle dumps and loads pickles via pickle.py. # test_cpickle does the same, but via the cPickle module. # This test covers the other two cases, making pickles with one module and # loading them via the other. import pickle import cPickle from test import test_support from test.pickletester import AbstractPickleTests class DumpCPickle_LoadPickle(AbstractPickleTests): error = KeyError def dumps(self, arg, proto=0, fast=0): # Ignore fast return cPickle.dumps(arg, proto) def loads(self, buf): # Ignore fast return pickle.loads(buf) class DumpPickle_LoadCPickle(AbstractPickleTests): error = cPickle.BadPickleGet def dumps(self, arg, proto=0, fast=0): # Ignore fast return pickle.dumps(arg, proto) def loads(self, buf): # Ignore fast return cPickle.loads(buf) def test_main(): test_support.run_unittest( DumpCPickle_LoadPickle, DumpPickle_LoadCPickle ) if __name__ == "__main__": test_main()