from cStringIO
import StringIO
from pickletester
import AbstractPickleTests
, AbstractPickleModuleTests
from test
import test_support
class cPickleTests(AbstractPickleTests
, AbstractPickleModuleTests
):
self
.dumps
= cPickle
.dumps
self
.loads
= cPickle
.loads
error
= cPickle
.BadPickleGet
class cPicklePicklerTests(AbstractPickleTests
):
def dumps(self
, arg
, proto
=0):
p
= cPickle
.Pickler(f
, proto
)
error
= cPickle
.BadPickleGet
class cPickleListPicklerTests(AbstractPickleTests
):
def dumps(self
, arg
, proto
=0):
p
= cPickle
.Pickler(proto
)
error
= cPickle
.BadPickleGet
class cPickleFastPicklerTests(AbstractPickleTests
):
def dumps(self
, arg
, proto
=0):
p
= cPickle
.Pickler(f
, proto
)
error
= cPickle
.BadPickleGet
def test_recursive_list(self
):
self
.assertRaises(ValueError,
AbstractPickleTests
.test_recursive_list
,
def test_recursive_inst(self
):
self
.assertRaises(ValueError,
AbstractPickleTests
.test_recursive_inst
,
def test_recursive_dict(self
):
self
.assertRaises(ValueError,
AbstractPickleTests
.test_recursive_dict
,
def test_recursive_multi(self
):
self
.assertRaises(ValueError,
AbstractPickleTests
.test_recursive_multi
,
def test_nonrecursive_deep(self
):
# If it's not cyclic, it should pickle OK even if the nesting
# depth exceeds PY_CPICKLE_FAST_LIMIT. That happens to be
# 50 today. Jack Jansen reported stack overflow on Mac OS 9
b
= self
.loads(self
.dumps(a
))
test_support
.run_unittest(
if __name__
== "__main__":