def _deserialize(self, data: str) -> None: json_data = json_loads(data) self.progress_store = ProgressStore(json_data.get("PROGRESS")) self.set_metadata(json_data.get("METADATA", {})) self.answer_store = AnswerStore(json_data.get("ANSWERS")) self.list_store = ListStore.deserialize(json_data.get("LISTS")) self.response_metadata = json_data.get("RESPONSE_METADATA", {})
def _deserialize(self, data): json_data = json.loads(data, use_decimal=True) self.progress_store = ProgressStore(json_data.get("PROGRESS")) self.set_metadata(json_data.get("METADATA", {})) self.answer_store = AnswerStore(json_data.get("ANSWERS")) self.list_store = ListStore.deserialize(json_data.get("LISTS")) self.collection_metadata = json_data.get("COLLECTION_METADATA", {})
def fake_list_store(): serialized = [ { "name": "people", "primary_person": "abcdef", "items": ["abcdef", "ghijkl", "xyzabc"], }, { "name": "pets", "items": ["tuvwxy"] }, ] return ListStore.deserialize(serialized)
def test_repr(): test_list = ListModel("people", ["primaryperson"], primary_person="primaryperson") serialized = [{ "name": "people", "primary_person": "primaryperson", "items": ["123", "primaryperson"], }] list_store = ListStore.deserialize(serialized) assert "primary_person=primaryperson" in repr(test_list) assert "items=['primaryperson']" in repr(test_list) assert "primaryperson" in repr(list_store)
def test_deserialisation(): store = ListStore() # pylint: disable=protected-access first_id = store._generate_identifier() second_id = store._generate_identifier() additional_id = store._generate_identifier() serialized = [ {"name": "people", "primary_person": second_id, "items": [first_id, second_id]}, {"name": "pets", "items": [additional_id]}, ] deserialized = ListStore.deserialize(serialized) assert deserialized["people"].items == [first_id, second_id] assert deserialized["people"].primary_person == second_id assert deserialized["pets"].items == [additional_id]