def test_dataclass_with_list_caches_class(self): json_dataclass_with_list = '{"xs": [1]}' _ = DataClassWithList.from_json(json_dataclass_with_list) # type hints for class cached assert _get_type_hints_cache._Cache__currsize == 1 # supported generic called for List[int] and int itself assert _is_supported_generic_cache._Cache__currsize == 2 # for the dataclass assert _user_overrides_cache._Cache__currsize == 1 # force cache hits _ = DataClassWithList.from_json(json_dataclass_with_list) assert _get_type_hints_cache._Cache__currsize == 1 assert _is_supported_generic_cache._Cache__currsize == 2 assert _user_overrides_cache._Cache__currsize == 1
def test_list(self): assert ( DataClassWithList.from_json('{"xs": [1]}') == DataClassWithList( [1]))