[pypy-svn] r9921 - pypy/dist/pypy/lib/test2
alex at codespeak.net
alex at codespeak.net
Sun Mar 20 16:34:41 CET 2005
Author: alex
Date: Sun Mar 20 16:34:41 2005
New Revision: 9921
Modified:
pypy/dist/pypy/lib/test2/test_obj.py
Log:
test pickle (plain) on user class
Modified: pypy/dist/pypy/lib/test2/test_obj.py
==============================================================================
--- pypy/dist/pypy/lib/test2/test_obj.py (original)
+++ pypy/dist/pypy/lib/test2/test_obj.py Sun Mar 20 16:34:41 2005
@@ -1,23 +1,36 @@
-# -*- coding: iso-8859-1 -*-
-import unittest, test.test_support
-import sys, cStringIO
-
-class ObjectTest(unittest.TestCase):
-
- def test_hash_builtin(self):
- o = object()
- self.assertEquals(hash(o), id(o))
-
- def test_hash_method(self):
- o = object()
- self.assertEquals(hash(o), o.__hash__())
-
- def test_hash_list(self):
- l = range(5)
- self.assertRaises(TypeError, hash, l)
-
-def test_main():
- test.test_support.run_unittest(ObjectTest)
-
-if __name__ == "__main__":
- test_main()
+# -*- coding: iso-8859-1 -*-
+import unittest, test.test_support
+import sys, cStringIO, pickle
+
+class Picklable(object):
+ def __init__(self):
+ self.a = 5
+ def __eq__(self, other):
+ return self.a == other.a
+
+class ObjectTest(unittest.TestCase):
+
+ def test_hash_builtin(self):
+ o = object()
+ self.assertEquals(hash(o), id(o))
+
+ def test_hash_method(self):
+ o = object()
+ self.assertEquals(hash(o), o.__hash__())
+
+ def test_hash_list(self):
+ l = range(5)
+ self.assertRaises(TypeError, hash, l)
+
+ def test_pickle_plain(self):
+ x = Picklable()
+ for proto in range(pickle.HIGHEST_PROTOCOL + 1):
+ s = pickle.dumps(x, proto)
+ y = pickle.loads(s)
+ self.assertEqual(x, y)
+
+def test_main():
+ test.test_support.run_unittest(ObjectTest)
+
+if __name__ == "__main__":
+ test_main()
More information about the Pypy-commit
mailing list