원클릭으로
template-testing
Comprehensive testing of the cookiecutter template across all configurations.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Comprehensive testing of the cookiecutter template across all configurations.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Configure or use the aiocache caching layer. Use when: adding cache reads/writes, configuring cache backends, working with TTLs, enabling/disabling caching, or understanding the NoOpCache fallback pattern.
Create or modify Celery tasks and periodic task configuration. Use when: adding new background tasks, setting up periodic/scheduled tasks, configuring Celery workers, or understanding the Celery app setup.
Work with the Docker Compose development environment. Use when: starting or stopping services, inspecting logs, opening a shell in a container, resetting the database, or understanding the service topology.
Create or modify FastAPI routes. Use when: adding new API endpoints, creating Pydantic request/response models, registering routers, designing REST APIs, or following route conventions for this project.
Create or modify Jinja2 templates. Use when: adding new HTML templates, configuring the Jinja2 environment, adding custom filters or globals, rendering templates outside FastAPI, or working with template inheritance.
Complete reference for all make targets in the project. Use when: looking up the right make command for any task — setup, testing, linting, formatting, database, packaging, or cleanup.
| name | template-testing |
| description | Comprehensive testing of the cookiecutter template across all configurations. |
Please perform comprehensive testing of the cookiecutter template to ensure all configurations generate working projects with passing tests, type checking, and linting.
Test ALL three standard configurations located in the tests/ directory:
tests/full.yaml): All features enabled (FastAPI, Celery, QuasiQueue, Database, Caching, Docker)tests/library.yaml): Minimal setup for Python library developmenttests/bare.yaml): Basic project with no optional featuresFor EACH configuration, perform these steps:
cd /Users/tedivm/Repositories/tedivm/robs_awesome_python_template
rm -rf workspaces/<config_name>
cookiecutter --config-file tests/<config_name>.yaml --no-input --output-dir workspaces .
cd workspaces/<config_name>
Run the key validation checks:
make pytest # Run all tests with coverage
make mypy_check # Type checking
make ruff_check # Linting
Note: Formatting issues (prettier, tomlsort, paracelsus) can be auto-fixed with make chores and are not critical for validation.
Check that:
IMPORTANT: In addition to the three standard configurations, create and test additional custom configurations relevant to your current work session.
For example:
Create temporary YAML config files in the workspaces/ directory (these won't be committed):
# Example: workspaces/custom_test.yaml
default_context:
project_name: "Custom Test"
project_slug: "custom_test"
package_name: "custom_test"
include_fastapi: "y"
include_celery: "n"
include_database: "y"
include_caching: "y"
# ... other settings as needed
Then test with:
cookiecutter --config-file workspaces/custom_test.yaml --no-input --output-dir workspaces .
Standard configurations should produce these results:
{% raw %}...{% endraw %}# type: ignore for untyped third-party libraries as a last resort onlyAfter testing, provide a summary that includes:
Configuration Results: For each tested configuration
Test Output Analysis: Key findings from test execution
Validation Status: Overall health check
Remember that this is a cookiecutter template project, which means:
{{cookiecutter.__package_slug}}/tests/*.yamlworkspaces/hooks/post_gen_project.py script removes unnecessary files based on configurationTesting is considered successful when:
Remember: Testing is not just about running commands—it's about validating that the template produces high-quality, production-ready Python projects across all supported configurations.