/**
  * @param string $request
  * @param array  $response
  *
  * @dataProvider requestsApi
  * @depends testCreateRole
  */
 public function testUpdateRole($request, $response)
 {
     if (is_null($request['label'])) {
         $request['label'] = self::DEFAULT_VALUE;
     }
     //get role id
     $roleId = $this->client->getSoap()->getRoleByName($request['label']);
     $roleId = ToolsAPI::classToArray($roleId);
     $request['label'] .= '_Updated';
     $result = $this->client->getSoap()->updateRole($roleId['id'], $request);
     $result = ToolsAPI::classToArray($result);
     ToolsAPI::assertEqualsResponse($response, $result);
     $role = $this->client->getSoap()->getRole($roleId['id']);
     $role = ToolsAPI::classToArray($role);
     $this->assertEquals($request['label'], $role['label']);
 }
 /**
  * @param string $request
  * @param array  $response
  *
  * @dataProvider requestsApi
  * @depends testCreateUser
  */
 public function testUpdateUser($request, $response)
 {
     //get user id
     $userId = $this->client->getSoap()->getUserBy(array('item' => array('key' => 'username', 'value' => $request['username'])));
     $userId = ToolsAPI::classToArray($userId);
     $request['username'] = '******' . $request['username'];
     $request['email'] = 'Updated_' . $request['email'];
     unset($request['plainPassword']);
     $result = $this->client->getSoap()->updateUser($userId['id'], $request);
     $result = ToolsAPI::classToArray($result);
     ToolsAPI::assertEqualsResponse($response, $result);
     $user = $this->client->getSoap()->getUser($userId['id']);
     $user = ToolsAPI::classToArray($user);
     $this->assertEquals($request['username'], $user['username']);
     $this->assertEquals($request['email'], $user['email']);
 }
 /**
  * @param string $request
  * @param array  $response
  *
  * @dataProvider requestsApi
  * @depends testCreateGroup
  */
 public function testUpdateGroup($request, $response)
 {
     $groups = $this->client->getSoap()->getGroups();
     $groups = ToolsAPI::classToArray($groups);
     foreach ($groups['item'] as $group) {
         if ($group['name'] == $request['name']) {
             $groupId = $group['id'];
             break;
         }
     }
     $request['name'] .= '_Updated';
     $result = $this->client->getSoap()->updateGroup($groupId, $request);
     $result = ToolsAPI::classToArray($result);
     ToolsAPI::assertEqualsResponse($response, $result);
     $group = $this->client->getSoap()->getGroup($groupId);
     $group = ToolsAPI::classToArray($group);
     $this->assertEquals($request['name'], $group['name']);
 }