mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # 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()
 | 
