翻译机构-完美 / 动作模式
适用于小段代码的动作,可在laravel中使用
v0.2.5
2023-11-06 08:13 UTC
Requires
- php: >=7.4|^8.0|^8.1
- illuminate/console: ^8.0|9.*|^v10.26
- illuminate/container: ^8.0|^9.0|^v10.26.2
- phpunit/phpunit: ^9.5.4|^10.0
README
动作旨在非常小,单一目的的代码片段。
由于动作体积小,因此易于重用。
示例用例包括
- 实现第三方API调用
- 简单的常规工作
安装
composer require vertaalbureau-perfect/action-pattern
创建动作
php artisan make:action [ActionName]
您也可以在子命名空间中创建动作
php artisan make:action [SubNamespace]/[ActionName]
动作放在您的app/Actions文件夹中。
用法
想象一个简单的动作来记录日志
class CreateLogAction extends AbstractAction { public function handle($message) { Log::debug($message); } }
使用它,我们只需调用
CreateLogAction::execute('Write me to the log please!');
测试
为测试目的,您可以使用静态的伪造方法。
CreateLogAction::fake();
如果您的代码依赖于动作的返回值,您可以在伪造方法中提供返回值。
CreateLogAction::fake('Log Success');