cookiecutter
25 строк · 807.0 Байт
1"""Test cookiecutter invocation with nested configuration structure."""
2
3from pathlib import Path4
5import pytest6
7from cookiecutter import main8
9
10@pytest.mark.parametrize(11"template_dir,output_dir",12[13["fake-nested-templates", "fake-project"],14["fake-nested-templates-old-style", "fake-package"],15],16)
17def test_cookiecutter_nested_templates(18mocker, template_dir: str, output_dir: str19) -> None:20"""Verify cookiecutter nested configuration files mechanism."""21mock_generate_files = mocker.patch("cookiecutter.main.generate_files")22main_dir = (Path("tests") / template_dir).resolve()23main.cookiecutter(f"{main_dir}", no_input=True)24expected = (Path(main_dir) / output_dir).resolve()25assert mock_generate_files.call_args[1]["repo_dir"] == f"{expected}"26