php artisan boost:add-skill nowo-tech/manual-kit-bundle
Save this content to: .cursor/rules/40-tests-quality.mdc
Test layout: `tests/Unit`, `tests/Integration` (kernel boot, `tests/Support/TestKernel.php`), `tests/Functional`
(HTTP + commands), Vitest next to the TypeScript sources, Playwright e2e in `demo/symfony8/e2e`.
When behaviour changes, add or update the nearest test:
- config validation → `tests/Unit/DependencyInjection/ConfigurationTest.php` (data provider of invalid configs)
- providers → `tests/Unit/Translation/ProvidersTest.php` (`MockHttpClient`; an empty `MockResponse` chunk simulates a
timeout)
- pages → `tests/Functional/ManualControllerTest.php`
Gates (all inside Docker): `make test`, `make test-coverage-100` (PHP 100% lines), `make test-ts`, `make phpstan`
(level 8), `make rector-dry`, `make igor`, `make cs-check`, and `make release-check` for the whole chain.
Fixtures must not contain realistic-looking secrets: use obvious placeholders.
Do not add testing frameworks or rewrite unrelated tests.
Test layout: tests/Unit, tests/Integration (kernel boot, tests/Support/TestKernel.php), tests/Functional
(HTTP + commands), Vitest next to the TypeScript sources, Playwright e2e in demo/symfony8/e2e.
When behaviour changes, add or update the nearest test:
tests/Unit/DependencyInjection/ConfigurationTest.php (data provider of invalid configs)tests/Unit/Translation/ProvidersTest.php (MockHttpClient; an empty MockResponse chunk simulates a
timeout)tests/Functional/ManualControllerTest.phpGates (all inside Docker): make test, make test-coverage-100 (PHP 100% lines), make test-ts, make phpstan
(level 8), make rector-dry, make igor, make cs-check, and make release-check for the whole chain.
Fixtures must not contain realistic-looking secrets: use obvious placeholders.
Do not add testing frameworks or rewrite unrelated tests.
How can I help you explore Laravel packages today?