| 68 | self.assertEqual(SON, d4["blah"]["foo"].__class__) |
| 69 | |
| 70 | def test_to_dict(self): |
| 71 | a1 = SON() |
| 72 | b2 = SON([("blah", SON())]) |
| 73 | c3 = SON([("blah", [SON()])]) |
| 74 | d4 = SON([("blah", {"foo": SON()})]) |
| 75 | self.assertEqual({}, a1.to_dict()) |
| 76 | self.assertEqual({"blah": {}}, b2.to_dict()) |
| 77 | self.assertEqual({"blah": [{}]}, c3.to_dict()) |
| 78 | self.assertEqual({"blah": {"foo": {}}}, d4.to_dict()) |
| 79 | self.assertEqual(dict, a1.to_dict().__class__) |
| 80 | self.assertEqual(dict, b2.to_dict()["blah"].__class__) |
| 81 | self.assertEqual(dict, c3.to_dict()["blah"][0].__class__) |
| 82 | self.assertEqual(dict, d4.to_dict()["blah"]["foo"].__class__) |
| 83 | |
| 84 | # Original data unaffected. |
| 85 | self.assertEqual(SON, d4["blah"]["foo"].__class__) |
| 86 | |
| 87 | def test_pickle(self): |
| 88 | simple_son = SON([]) |