Testing
Instructions
- All tests must be written using Pest.
- Tests use Pest PHP with Laravel plugin. Feature tests extend
Tests\TestCasewith RefreshDatabase trait available (commented out intests/Pest.phpby default). - Always start all work using TDD–write tests before writing any code.
- If you need to verify a feature is working, write or update a Unit / Feature test.
- You must not remove any tests or test files from the tests directory without approval. These are not temporary or helper files - these are core to the application.
- Tests should test all of the happy paths, failure paths, and weird paths.
- Tests live in the
tests/Featureandtests/Unitdirectories.
Running Tests
- Run the minimal number of tests using an appropriate filter before finalizing code edits.
- To run all tests:
php artisan test. - To run all tests in a file:
php artisan test tests/Feature/ExampleTest.php. - To filter on a particular test name:
php artisan test --filter=testName(recommended after making a change to a related file). - When the tests relating to your changes are passing, ask the user if they would like to run the entire test suite to ensure everything is still passing.