Example #1
0
def _process_config(path: Optional[pathlib.Path]) -> Config:

    if not path:
        return Config()

    try:
        return Config.load_from_path(path=path)
    except:  # noqa
        raise typer.BadParameter("Unable to parse config")
Example #2
0
def test_load_from_path(mocker):
    safe_load = mocker.patch("yaml.safe_load", return_value={})
    fake_path = mocker.MagicMock(autospec=pathlib.Path)
    load_config = mocker.patch(
        "openapi_python_client.config.Config.load_config")

    Config.load_from_path(fake_path)
    safe_load.assert_called()
    load_config.assert_called()
    def test_project_and_package_name_overrides(self):
        config = Config(project_name_override="project-name",
                        package_name_override="package_name")
        config.load_config()

        from openapi_python_client import Project

        assert Project.project_name_override == "project-name"
        assert Project.package_name_override == "package_name"
Example #4
0
def test_load_from_path(mocker):
    from openapi_python_client import utils

    override1 = {"class_name": "ExampleClass", "module_name": "example_module"}
    override2 = {
        "class_name": "DifferentClass",
        "module_name": "different_module"
    }
    safe_load = mocker.patch(
        "yaml.safe_load",
        return_value={
            "field_prefix": "blah",
            "class_overrides": {
                "Class1": override1,
                "Class2": override2
            },
            "project_name_override": "project-name",
            "package_name_override": "package_name",
            "package_version_override": "package_version",
        },
    )
    fake_path = mocker.MagicMock(autospec=pathlib.Path)

    config = Config.load_from_path(fake_path)
    safe_load.assert_called()
    assert utils.FIELD_PREFIX == "blah"
    assert config.class_overrides["Class1"] == override1
    assert config.class_overrides["Class2"] == override2
    assert config.project_name_override == "project-name"
    assert config.package_name_override == "package_name"
    assert config.package_version_override == "package_version"

    utils.FIELD_PREFIX = "field_"
Example #5
0
def test_load_from_path(tmp_path: Path, filename, dump, relative):
    yml_file = tmp_path.joinpath(filename)
    if relative:
        if not os.getenv("TASKIPY"):
            pytest.skip(
                "Only test relative paths when running with `task check`")
            return
        yml_file = yml_file.relative_to(Path.cwd())
    override1 = {"class_name": "ExampleClass", "module_name": "example_module"}
    override2 = {
        "class_name": "DifferentClass",
        "module_name": "different_module"
    }
    data = {
        "field_prefix": "blah",
        "class_overrides": {
            "Class1": override1,
            "Class2": override2
        },
        "project_name_override": "project-name",
        "package_name_override": "package_name",
        "package_version_override": "package_version",
    }
    yml_file.write_text(dump(data))

    config = Config.load_from_path(yml_file)
    assert config.field_prefix == "blah"
    assert config.class_overrides["Class1"] == override1
    assert config.class_overrides["Class2"] == override2
    assert config.project_name_override == "project-name"
    assert config.package_name_override == "package_name"
    assert config.package_version_override == "package_version"
Example #6
0
    def test_field_prefix(self):
        Config(field_prefix="blah").load_config()

        from openapi_python_client import utils

        assert utils.FIELD_PREFIX == "blah"

        utils.FIELD_PREFIX = "field_"
Example #7
0
    def test_class_overrides(self):
        from openapi_python_client.parser import reference

        override1 = {
            "class_name": "ExampleClass",
            "module_name": "example_module"
        }
        override2 = {
            "class_name": "DifferentClass",
            "module_name": "different_module"
        }
        config = Config(class_overrides={
            "Class1": override1,
            "Class2": override2
        })
        config.load_config()

        assert reference.class_overrides["Class1"] == reference.Reference(
            **override1)
        assert reference.class_overrides["Class2"] == reference.Reference(
            **override2)