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)); }