group; } /** * Set instance group * * @param Group $group */ public function setInstanceGroup(Group $group) { $this->group = $group; } /** * Sets up the unit tests. */ protected function setUp() { $this->setInstanceGroup(new Group()); } /** * Information Group * * @return array Definition Data Group */ public function testDataGroup() { $response = [ 'GRP_TITLE' => 'Group Test Unit', 'GRP_STATUS' => 'ACTIVE' ]; return $response; } /** * Create group * * @depends testDataGroup * * @param array $dataGroup Information Group * * @return string group Uid */ public function testCreate($dataGroup) { $response = $this->getInstanceGroup()->create($dataGroup); $this->assertArrayHasKey('GRP_UID', $response); return $response['GRP_UID']; } /** * Get users from a group created recently. * * @depends testCreate * @param string $groupUid Uid group */ public function testGetUsersOfGroup($groupUid) { $response = $this->getInstanceGroup()->getUsers('USERS', $groupUid); $this->assertCount(0, $response); } /** * Get available users for assign to a group * * @depends testCreate * @param string $groupUid Uid group */ public function testGetUsersAvailable($groupUid) { $response = $this->getInstanceGroup()->getUsers('AVAILABLE-USERS', $groupUid); $this->assertCount(1, $response); } /** * Obtain assigned supervisors * * @depends testCreate * @param string $groupUid Uid group */ public function testGetUsersSupervisor($groupUid) { $response = $this->getInstanceGroup()->getUsers('SUPERVISOR', $groupUid); $this->assertCount(0, $response); } /** * Delete group * * @depends testCreate * @expectedException Exception * * @param string $groupUid Uid Group */ public function testDelete($groupUid) { $this->getInstanceGroup()->delete($groupUid); $this->getInstanceGroup()->getGroup($groupUid); } }