diff options
Diffstat (limited to 'tests/type/test_useful.py')
-rw-r--r-- | tests/type/test_useful.py | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/type/test_useful.py b/tests/type/test_useful.py index 82a97d7..2af17ff 100644 --- a/tests/type/test_useful.py +++ b/tests/type/test_useful.py @@ -7,6 +7,7 @@ import sys import datetime from copy import deepcopy +import pickle try: import unittest2 as unittest @@ -78,6 +79,24 @@ class GeneralizedTimeTestCase(BaseTestCase): assert dt == deepcopy(dt) +class GeneralizedTimePicklingTestCase(unittest.TestCase): + + def testSchemaPickling(self): + old_asn1 = useful.GeneralizedTime() + serialized = pickle.dumps(old_asn1) + assert serialized + new_asn1 = pickle.loads(serialized) + assert type(new_asn1) == useful.GeneralizedTime + assert old_asn1.isSameTypeWith(new_asn1) + + def testValuePickling(self): + old_asn1 = useful.GeneralizedTime("20170916234254+0130") + serialized = pickle.dumps(old_asn1) + assert serialized + new_asn1 = pickle.loads(serialized) + assert new_asn1 == old_asn1 + + class UTCTimeTestCase(BaseTestCase): def testFromDateTime(self): @@ -98,6 +117,25 @@ class UTCTimeTestCase(BaseTestCase): def testToDateTime4(self): assert datetime.datetime(2017, 7, 11, 0, 1) == useful.UTCTime('1707110001').asDateTime + +class UTCTimePicklingTestCase(unittest.TestCase): + + def testSchemaPickling(self): + old_asn1 = useful.UTCTime() + serialized = pickle.dumps(old_asn1) + assert serialized + new_asn1 = pickle.loads(serialized) + assert type(new_asn1) == useful.UTCTime + assert old_asn1.isSameTypeWith(new_asn1) + + def testValuePickling(self): + old_asn1 = useful.UTCTime("170711000102") + serialized = pickle.dumps(old_asn1) + assert serialized + new_asn1 = pickle.loads(serialized) + assert new_asn1 == old_asn1 + + suite = unittest.TestLoader().loadTestsFromModule(sys.modules[__name__]) if __name__ == '__main__': |