public function testUserRoles() { $adm = new couchAdmin($this->aclient); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(0, count($user->roles)); $adm->addRoleToUser($user, "cowboy"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(1, count($user->roles)); $this->assertEquals("cowboy", reset($user->roles)); $adm->addRoleToUser("joe", "trainstopper"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(2, count($user->roles)); $this->assertEquals("cowboy", reset($user->roles)); $this->assertEquals("trainstopper", end($user->roles)); $adm->removeRoleFromUser($user, "cowboy"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(1, count($user->roles)); $this->assertEquals("trainstopper", reset($user->roles)); $adm->removeRoleFromUser("joe", "trainstopper"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(0, count($user->roles)); }