goodm4ven / anvil
An internal support package used for Laravel package development
Fund package maintenance!
GoodM4ven
Installs: 150
Dependents: 2
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/goodm4ven/anvil
Requires
- php: ^8.4||^8.3
- illuminate/contracts: ^11.0||^12.0
- illuminate/support: ^11.0||^12.0
- laravel/boost: ^1.8
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-browser: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.8
- orchestra/testbench: ^10.0.0||^9.0.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-phpunit: ^2.0
README
بسم الله الرحمن الرحيمAnvil
An internal package used for Laravel package development...
Installation
Install the package with Composer:
composer require --dev goodm4ven/anvil
Usage
I'm doing my best to make the helper classes "activatable" or injectable with ease. This is what we have, so far:
Laravel Booster incorrect alias for package development
Inject this to a service provider's register method:
\GoodMaven\Anvil\Fixes\RegisterLaravelBoosterJsonSchemaFix::activate();
Synchronize environment variables & configurations for Workbench testing
- Inside your
TestCase.phpclass, use this trait:
use \GoodMaven\Anvil\Concerns\TestableWorkbench;
- Inside the same class Testbench's
getEnvironmentSetUpmethod, call this method:
$this->setDatabaseTestingEssentials();
PestPHP Livewire Testing Methods
In order to bypass the issue of assigning specific waiting time for input fields to update correctly, we have these 2 helper methods:
use GoodMaven\Anvil\Support\LivewireTester; LivewireTester::waitForDomInputValue($page, $selector, $expectedValue); LivewireTester::waitForRenderedInputValue($page, $selector, $expectedValue);
Development
This package was initiated based on my Laravel package template that is built on top of Spatie's. Make sure to read the docs for both.
Tasks
- // TODO Unit testing all features
Support
Support ongoing package maintenance as well as the development of other projects through sponsorship or one-time donations if you prefer.
Credits
والحمد لله رب العالمين