def test_toOrigNominal(self): j = Json() j.a = Json({"b": "c"}) j.toString() j.toOrig() repr(j) d = j.toOrig() self.assertIsInstance(d, sdict) self.assertDictEqual(d, {"a": {"b": "c"}})
def test_to_dict_with_tuple(self): nested = {"a": ({"a": 0}, {2: 0})} prop = Json(nested) regular = prop.toOrig() self.assertDictEqual(regular, prop) self.assertDictEqual(regular, nested) self.assertIsInstance(regular["a"], tuple) self.assertNotIsInstance(regular["a"][0], Json)
def test_to_dict(self): nested = {"a": [{"a": 0}, 2], "b": {}, "c": 2} prop = Json(nested) regular = prop.toOrig() self.assertDictEqual(regular, prop) self.assertDictEqual(regular, nested) self.assertNotIsInstance(regular, Json) with self.assertRaises(AttributeError): regular.a def get_attr_deep(): return regular["a"][0].a self.assertRaises(AttributeError, get_attr_deep)
def test_ConvertSetToList(self): j = Json() j.st = set((1, 2)) d = j.toOrig() self.assertIsInstance(d, sdict) self.assertDictEqual({"st": set([1, 2])}, d)