summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_rational.py
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2008-01-25 00:21:54 (GMT)
committerRaymond Hettinger <python@rcn.com>2008-01-25 00:21:54 (GMT)
commita6216749fb88fb508cd469839d77d4264a881bd4 (patch)
treeb61e404c72e88f8ad44d6a82b8739b24a26abebe /Lib/test/test_rational.py
parent909e334e8a525e8430f1532c0ecf133f19d3d185 (diff)
downloadcpython-a6216749fb88fb508cd469839d77d4264a881bd4.zip
cpython-a6216749fb88fb508cd469839d77d4264a881bd4.tar.gz
cpython-a6216749fb88fb508cd469839d77d4264a881bd4.tar.bz2
Add support for copy, deepcopy, and pickle.
Diffstat (limited to 'Lib/test/test_rational.py')
-rw-r--r--Lib/test/test_rational.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/test/test_rational.py b/Lib/test/test_rational.py
index 3242e43..20abce2 100644
--- a/Lib/test/test_rational.py
+++ b/Lib/test/test_rational.py
@@ -6,6 +6,8 @@ import math
import operator
import rational
import unittest
+from copy import copy, deepcopy
+from cPickle import dumps, loads
R = rational.Rational
def _components(r):
@@ -359,6 +361,12 @@ class RationalTest(unittest.TestCase):
s += num / fact * sign
self.assertAlmostEquals(math.cos(1), s)
+ def test_copy_deepcopy_pickle(self):
+ r = R(13, 7)
+ self.assertEqual(r, loads(dumps(r)))
+ self.assertEqual(id(r), id(copy(r)))
+ self.assertEqual(id(r), id(deepcopy(r)))
+
def test_main():
run_unittest(RationalTest)