diff options
author | Stefan Krah <skrah@bytereef.org> | 2014-04-29 16:24:50 (GMT) |
---|---|---|
committer | Stefan Krah <skrah@bytereef.org> | 2014-04-29 16:24:50 (GMT) |
commit | 8fb74a35da34cf33704f30f97cf962905b2a643a (patch) | |
tree | a5bbd944615154726a3cf3fd21838e3740fa64fd /Lib/test | |
parent | da25109fbca0f7347452b39501a8523d134c7518 (diff) | |
download | cpython-8fb74a35da34cf33704f30f97cf962905b2a643a.zip cpython-8fb74a35da34cf33704f30f97cf962905b2a643a.tar.gz cpython-8fb74a35da34cf33704f30f97cf962905b2a643a.tar.bz2 |
Issue #21374: Fix pickling of DecimalTuple.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_decimal.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Lib/test/test_decimal.py b/Lib/test/test_decimal.py index 4031347..4b27907 100644 --- a/Lib/test/test_decimal.py +++ b/Lib/test/test_decimal.py @@ -2431,6 +2431,23 @@ class PythonAPItests(unittest.TestCase): self.assertIsInstance(r, C.Decimal) self.assertEqual(r, x) + x = C.Decimal('-3.123e81723').as_tuple() + y = P.Decimal('-3.123e81723').as_tuple() + + sys.modules['decimal'] = C + sx = pickle.dumps(x) + sys.modules['decimal'] = P + r = pickle.loads(sx) + self.assertIsInstance(r, P.DecimalTuple) + self.assertEqual(r, y) + + sys.modules['decimal'] = P + sy = pickle.dumps(y) + sys.modules['decimal'] = C + r = pickle.loads(sy) + self.assertIsInstance(r, C.DecimalTuple) + self.assertEqual(r, x) + sys.modules['decimal'] = savedecimal def test_int(self): |