示例#1
0
 public function testAddAdminWithSecondUser()
 {
     $user1 = new ShortUrl_Model_User();
     $user2 = new ShortUrl_Model_User();
     $group = new ShortUrl_Model_Group();
     $group->addAdmin($user1);
     $group->addMember($user2);
     $this->assertTrue($group->hasMember($user1));
     $this->assertTrue($group->hasMember($user2));
     $this->assertTrue($group->hasAdmin($user1));
     $this->assertFalse($group->hasAdmin($user2));
     $this->assertTrue($user1->isMemberOf($group));
     $this->assertTrue($user2->isMemberOf($group));
     $this->assertTrue($user1->isAdminOf($group));
     $this->assertFalse($user2->isAdminOf($group));
     $group->removeAdmin($user1);
     $this->assertTrue($group->hasMember($user1));
     $this->assertTrue($group->hasMember($user2));
     $this->assertFalse($group->hasAdmin($user1));
     $this->assertFalse($group->hasAdmin($user2));
     $this->assertTrue($user1->isMemberOf($group));
     $this->assertTrue($user2->isMemberOf($group));
     $this->assertFalse($user1->isAdminOf($group));
     $this->assertFalse($user2->isAdminOf($group));
     $group->addAdmin($user2);
     $this->assertTrue($group->hasMember($user1));
     $this->assertTrue($group->hasMember($user2));
     $this->assertFalse($group->hasAdmin($user1));
     $this->assertTrue($group->hasAdmin($user2));
     $this->assertTrue($user1->isMemberOf($group));
     $this->assertTrue($user2->isMemberOf($group));
     $this->assertFalse($user1->isAdminOf($group));
     $this->assertTrue($user2->isAdminOf($group));
     $group->removeMember($user1);
     $this->assertFalse($group->hasMember($user1));
     $this->assertTrue($group->hasMember($user2));
     $this->assertFalse($group->hasAdmin($user1));
     $this->assertTrue($group->hasAdmin($user2));
     $this->assertFalse($user1->isMemberOf($group));
     $this->assertTrue($user2->isMemberOf($group));
     $this->assertFalse($user1->isAdminOf($group));
     $this->assertTrue($user2->isAdminOf($group));
 }