custom-d/unleash-helpers

Unleash 的辅助工具

v2.3.2 2023-07-25 03:27 UTC

README

安装

您可以通过 composer 安装此包

composer require custom-d/unleash-helpers

使用

单元测试

要在测试对象中包含功能标志,请添加 UsesFeatureFlag 特性

示例


use CustomD\UnleashHelpers\Traits\Testing\UsesFeatureFlags;

class MyFeatureTest extends TestCase
{
    use UsesFeatureFlags;

    public function testFlagsEnabled()
    {
        $this->setFeatureEnabled('test');
        $this->setFeatureDisabled('test2');

        $this->assertTrue(Unleash::isFeatureEnabled('test'));
        $this->assertTrue(Unleash::isFeatureDisabled('test2'));
    }

    public function testHasFeatureFlags()
    {
        //optional array of features
        $this->setUpFeatures([
            'flag' => true,
            'off' => false
        ]);
    }
    ...

调度器

您可以让调度器根据功能标志的状态触发事件:这将执行检查,并且只有当功能标志测试通过时,才会允许计划中的事件/作业等运行。示例

$schedule->job('xxx')->ifFeatureEnabled('feature');
$schedule->job('xxx')->ifFeatureDisabled('feature');

验证

我们可以按照以下方式调用验证规则集

function rules() {
    'field' => 'requiredWithFeatureEnabled:my-feature', // field should be required if the feature flag is set on
    'field' => 'requiredWithFeatureDisabled:my-feature', // field should be required if the feature flag is set off or not set.
}

测试

composer test

变更日志

请参阅 CHANGELOG 以获取更多有关最近更改的信息。

贡献

请参阅 CONTRIBUTING 以获取详细信息。

安全

如果您发现任何安全相关的问题,请通过 craig.smith@customd.com 发送电子邮件,而不是使用问题跟踪器。

鸣谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。