/** * @Given security contains own policies */ public function securityContainsOwnPolicies() { $this->applicationCore->registerSecurityPolicy('isLocalHost', function () { return new \Dgafka\Fixtures\Policies\IsLocalHost(); }); $this->applicationCore->registerSecurityPolicy('isMonday', function () { return new \Dgafka\Fixtures\Policies\IsMonday(); }); $this->applicationCore->registerSecurityPolicy('isSuperUser', function () { return new \Dgafka\Fixtures\Policies\IsSuperUser(); }); $this->applicationCore->registerSecurityPolicy('userLevelHigherThan5', function () { return new \Dgafka\Fixtures\Policies\UserLevelHigherThan5(); }); }
//Initialization $core = new Core(new CoreConfig(array(__DIR__), __DIR__ . '/../cache', true)); $core->registerUserFactory('roleUserFactory', function () { return new \Dgafka\Fixtures\Factory\RoleUserFactory(1, ['test']); }); $core->registerUserFactory('identityUserFactory', function () { return new \Dgafka\Fixtures\IBAC\IdentityUserFactory(10); }); $core->registerResourceFactory('resourceFactory', function () { return new \Dgafka\Fixtures\IBAC\ExampleResourceFactory(); }); $core->registerSecurityType('ibac', function () { return new \Dgafka\Fixtures\IBAC\IBACSecurity(new \Dgafka\Fixtures\IBAC\SimpleACL(['10' => [10, 12]])); }); $core->registerSecurityPolicy('isLocalHost', function () { return new \Dgafka\Fixtures\Policies\IsLocalHost(); }); $core->registerSecurityPolicy('isMonday', function () { return new \Dgafka\Fixtures\Policies\IsMonday(); }); $annotationSecurity = AnnotationSecurity::getInstance(); $annotationSecurity->init($core); //Tests echo "\nFirst Example:\n"; $example = new \Dgafka\Examples\BasicUsage(); $example->doIt(); echo "\nSecond Example:\n"; $example = new \Dgafka\Examples\TestExpression(); $shouldCatchException = false; try { $example->tellMeWhy();