예제 #1
0
	public function testGroup()
	{
		$group = new UserGroup('Webmasters');
		$group->save();
		$group->grant('someGrant');
		
		$this->assertFalse(Acl::isAllowed('dvorak', 'someGrant'));
		$group->add('dvorak');
		$this->assertTrue(Acl::isAllowed('dvorak', 'someGrant'));
		
		$group = new UserGroup('BadGroup');
		$group->save();
		$group->revoke('someGrant');
		$group->add('dvorak');
		
		$this->assertTrue(Acl::isAllowed('dvorak', 'someGrant')); // Even if dvorak is in a group that has no right he is allowed
	}
예제 #2
0
	protected function insert()
	{
		parent::insert();
		$group = new UserGroup('__'.$this->username);
		$group->save();
		
		$group->add($this->username);
		return $this->lockKey;
	}
예제 #3
0
	public function testAddMemberTwice()
	{
		$group = new UserGroup('SomeName');
		$group->save();
		$group->add('dvorak');
		
		try
		{
			$group->add('dvorak');
			$this->fail('Expected exception');
		}
		catch (Exception $e)
		{
			$this->assertEquals('User is already member of group', $e->getMessage());
		}
	}