def check_json_serializaiton(dataset: habitat.Dataset): start_time = time.time() json_str = str(dataset.to_json()) logger.info("JSON conversion finished. {} sec".format( (time.time() - start_time))) decoded_dataset = dataset.__class__() decoded_dataset.from_json(json_str) assert len(decoded_dataset.episodes) > 0 episode = decoded_dataset.episodes[0] assert isinstance(episode, Episode) assert (decoded_dataset.to_json() == json_str ), "JSON dataset encoding/decoding isn't consistent"
def check_json_serializaiton(dataset: habitat.Dataset): start_time = time.time() json_str = dataset.to_json() logger.info("JSON conversion finished. {} sec".format( (time.time() - start_time))) decoded_dataset = ObjectNavDatasetV1() decoded_dataset.from_json(json_str) assert len(decoded_dataset.episodes) == len(dataset.episodes) episode = decoded_dataset.episodes[0] assert isinstance(episode, Episode) # The strings won't match exactly as dictionaries don't have an order for the keys # Thus we need to parse the json strings and compare the serialized forms assert json.loads(decoded_dataset.to_json()) == json.loads( json_str), "JSON dataset encoding/decoding isn't consistent"