python-benedict/tests/serializers/test_pickle_serializer.py

40 lines
1.3 KiB
Python
Raw Normal View History

2020-02-20 16:15:53 +00:00
import datetime as dt
2020-02-19 17:14:23 +00:00
import unittest
from benedict.serializers import PickleSerializer
from benedict.utils import type_util
2020-02-19 17:14:23 +00:00
class pickle_serializer_test_case(unittest.TestCase):
2022-02-13 10:35:43 +00:00
"""
This class describes a pickle serializer test case.
"""
2020-02-19 17:14:23 +00:00
2020-02-20 17:08:38 +00:00
# def test_decode_pickle(self):
2020-02-21 13:36:07 +00:00
# s = 'gAJ9cQBYBAAAAGRhdGVxAWNkYXRldGltZQpkYXRldGltZQpxAmNfY29kZWNzCmVuY29kZQpxA1gLAAAAB8OBBAMAAAAAAABxBFgGAAAAbGF0aW4xcQWGcQZScQeFcQhScQlzLg=='
# d = PickleSerializer().decode(s)
2020-02-20 17:08:38 +00:00
# r = {
# 'date': dt.datetime(year=1985, month=4, day=3),
# }
# self.assertEqual(d, r)
2020-02-19 17:14:23 +00:00
# def test_encode_pickle(self):
# d = {
# 'date': dt.datetime(year=1985, month=4, day=3),
# }
# s = PickleSerializer().encode(d)
2020-02-21 13:36:07 +00:00
# r = 'gAJ9cQBYBAAAAGRhdGVxAWNkYXRldGltZQpkYXRldGltZQpxAmNfY29kZWNzCmVuY29kZQpxA1gLAAAAB8OBBAMAAAAAAABxBFgGAAAAbGF0aW4xcQWGcQZScQeFcQhScQlzLg=='
# self.assertEqual(s, r)
2020-02-20 17:08:38 +00:00
def test_encode_decode_pickle(self):
2020-02-20 16:15:53 +00:00
d = {
2022-02-13 10:35:43 +00:00
"date": dt.datetime(year=1985, month=4, day=3),
2020-02-20 16:15:53 +00:00
}
serializer = PickleSerializer()
s = serializer.encode(d)
2020-09-02 11:48:01 +00:00
# print(s)
self.assertTrue(type_util.is_string(s))
r = serializer.decode(s)
self.assertTrue(type_util.is_dict(d))
2020-02-20 17:08:38 +00:00
self.assertEqual(d, r)