示例#1
0
 /**
  * Test addRole method
  */
 public function testAddRole()
 {
     $this->rbac->addRole('string_role', ['posts.add', new Rbac\Resource('posts.edit')]);
     $this->assertEquals('string_role', $this->rbac->getRole('string_role')->getName());
     $role = new Rbac\Role('object_role', new Rbac\ResourceCollection(['users.add']));
     $role->setName('object_role2')->setTitle('Role Title')->setDescription('Role description');
     $this->rbac->addRole($role);
     $this->assertNull($this->rbac->getRole('object_role'));
     $this->assertEquals('object_role2', $this->rbac->getRole('object_role2')->getName());
     $this->assertEquals('Role Title', $this->rbac->getRole('object_role2')->getTitle());
     $this->assertEquals('Role description', $this->rbac->getRole('object_role2')->getDescription());
     $this->setExpectedExceptionRegExp('InvalidArgumentException', '/Role name must be string\\./');
     $role->setName(1);
 }