test_cpickle.py
来自「mallet是自然语言处理、机器学习领域的一个开源项目。」· Python 代码 · 共 101 行
PY
101 行
import cPickleimport test_supportimport unittestfrom cStringIO import StringIOfrom pickletester import AbstractPickleTests, AbstractPickleModuleTestsclass cPickleTests(AbstractPickleTests, AbstractPickleModuleTests): def setUp(self): self.dumps = cPickle.dumps self.loads = cPickle.loads error = cPickle.BadPickleGet module = cPickleclass cPicklePicklerTests(AbstractPickleTests): def dumps(self, arg, bin=0): f = StringIO() p = cPickle.Pickler(f, bin) p.dump(arg) f.seek(0) return f.read() def loads(self, buf): f = StringIO(buf) p = cPickle.Unpickler(f) return p.load() error = cPickle.BadPickleGetclass cPickleListPicklerTests(AbstractPickleTests): def dumps(self, arg, bin=0): p = cPickle.Pickler(bin) p.dump(arg) return p.getvalue() def loads(self, *args): f = StringIO(args[0]) p = cPickle.Unpickler(f) return p.load() error = cPickle.BadPickleGetclass cPickleFastPicklerTests(AbstractPickleTests): def dumps(self, arg, bin=0): f = StringIO() p = cPickle.Pickler(f, bin) p.fast = 1 p.dump(arg) f.seek(0) return f.read() def loads(self, *args): f = StringIO(args[0]) p = cPickle.Unpickler(f) return p.load() error = cPickle.BadPickleGet def test_recursive_list(self): self.assertRaises(ValueError, AbstractPickleTests.test_recursive_list, self) def test_recursive_inst(self): self.assertRaises(ValueError, AbstractPickleTests.test_recursive_inst, self) def test_recursive_dict(self): self.assertRaises(ValueError, AbstractPickleTests.test_recursive_dict, self) def test_recursive_multi(self): self.assertRaises(ValueError, AbstractPickleTests.test_recursive_multi, self) def test_nonrecursive_deep(self): a = [] for i in range(100): a = [a] b = self.loads(self.dumps(a)) self.assertEqual(a, b)def test_main(): loader = unittest.TestLoader() suite = unittest.TestSuite() suite.addTest(loader.loadTestsFromTestCase(cPickleTests)) suite.addTest(loader.loadTestsFromTestCase(cPicklePicklerTests)) suite.addTest(loader.loadTestsFromTestCase(cPickleListPicklerTests)) suite.addTest(loader.loadTestsFromTestCase(cPickleFastPicklerTests)) test_support.run_suite(suite)if __name__ == "__main__": test_main()
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?