Phalcon\Test\Unit\Acl\Adapter\MemoryTest::testAclWildcardAllowDeny PHP Метод

testAclWildcardAllowDeny() публичный Метод

Tests the wildcard allow/deny
С версии: 2014-10-04
Автор: Nikolaos Dimopoulos ([email protected])
    public function testAclWildcardAllowDeny()
    {
        $this->specify('Acl\\Role added twice by key returns true', function () {
            $acl = new Memory();
            $acl->setDefaultAction(Acl::DENY);
            $aclRoles = ['Admin' => new Role('Admin'), 'Users' => new Role('Users'), 'Guests' => new Role('Guests')];
            $aclResources = ['welcome' => ['index', 'about'], 'account' => ['index']];
            foreach ($aclRoles as $role => $object) {
                $acl->addRole($object);
            }
            foreach ($aclResources as $resource => $actions) {
                $acl->addResource(new Resource($resource), $actions);
            }
            $acl->allow("*", "welcome", "index");
            foreach ($aclRoles as $role => $object) {
                expect($acl->isAllowed($role, 'welcome', 'index'))->true();
            }
            $acl->deny("*", "welcome", "index");
            foreach ($aclRoles as $role => $object) {
                expect($acl->isAllowed($role, 'welcome', 'index'))->false();
            }
        });
    }