Example #1
0
def read_model(dirpath: Path, name: str, model: Type[T]) -> T:
    file: Path = _get_file_path(dirpath, name)
    if not file.exists():
        raise FileNotFoundError()
    elif not file.is_file():
        raise FileExistsError()
    return parse_file_as(model, file)
Example #2
0
def test_parse_file_as_json_loads(tmp_path):
    def custom_json_loads(*args, **kwargs):
        data = json.loads(*args, **kwargs)
        data[1] = 99
        return data

    p = tmp_path / 'test_json_loads.json'
    p.write_text('{"1": "2"}')
    assert parse_file_as(Dict[int, int], p, json_loads=custom_json_loads) == {1: 99}
Example #3
0
def test_parse_file_as(tmp_path):
    p = tmp_path / 'test.json'
    p.write_text('{"1": "2"}')
    assert parse_file_as(Dict[int, int], p) == {1: 2}