tmsllc / laravel-model-test
A package to create CRUD feature tests to eloquent models
Installs: 1 395
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ^8.0
- illuminate/support: ^8.71|^9.0
Requires (Dev)
- orchestra/testbench: ^6.23|^7.0
- phpunit/phpunit: ^9.4
README
This package gives you the ability to generate a bunch of tests for all models by one command.
Contact Me
You can check all of my information by Checking my website.
Installation
You can install the package via composer:
composer require tmsllc/laravel-model-test
you must publish package assets with:
php artisan vendor:publish --provider="TMSLLC\ModelTest\ModelTestServiceProvider"
This is the contents of the file which will be published at config/model-test.php
<?php return [ /* * the models you need to generate tests to */ 'models' => [ //'Model1' , 'Model2' ], /* * if your models routes are protected with auth guard middleware * and want to test that against your model set this to true */ 'auth_user' => true, /* * if you are using spatie/laravel-permission in your project * and want to test that against your model set this to true */ 'laravel-permissions' => false ];
Prerequisites
you need to make sure you have factory for each model before testing
Usage
Add models you want to test to config file like this :
/* * the models you need to generate tests to */ 'models' => [ 'Post' , 'Comment', ],
Generate tests
You can generate tests for given models by running this command
php artisan test:generate
this will generate a test file for each model which gives you the ability to extend the tests or overwrite them
Ready for testing!
You can run tests for Post
model by running this command
php artisan test --filter=PostsTest
or you can test all by running
php artisan test
Changelog
Please see CHANGELOG for more information what has changed recently.
License
The MIT License (MIT). Please see License File for more information.