/**
  * Adds user data to storage
  */
 public function addUser()
 {
     $user = new User();
     $user->setId('999999999')->setName('john')->setEmail('*****@*****.**')->setPassword('test');
     $this->userService->addUser($user);
     $this->users[] = $user;
 }
 /**
  * Testing get user by email
  */
 public function testGetByEmail()
 {
     $newUserId = '9879fgj4-dsd-fsdf-3s3u54bd-fgh4f878776sf8s7d-4535lou345';
     // Deletes user
     $this->elasticaService->deleteUser($newUserId);
     $newUser = new User();
     $newUser->setId($newUserId)->setName('John')->setEmail('*****@*****.**')->setPassword('test');
     $this->elasticaService->addUser($newUser);
     // Check if user exists
     $user = $this->elasticaService->getByEmail('*****@*****.**');
     $this->assertTrue(!empty($user));
     // Deletes user
     $this->elasticaService->deleteUser($newUserId);
 }
 /**
  * Adds a new user
  *
  * @param $user User Entity
  * @return string user id
  */
 public function addUser(User $user)
 {
     $newUser = array('name' => $user->getName(), 'email' => $user->getEmail(), 'password' => $user->getHashPassword());
     $userDocument = new Document($user->getId(), $newUser);
     $response = $this->type->addDocument($userDocument)->getData();
     $this->type->getIndex()->refresh();
     return $response['_id'];
 }
 /**
  * Edit a user.
  *
  * @param array $parameters
  *
  * @return User Entity
  */
 public function put($userID, array $parameters)
 {
     $user = new User();
     $user->setId($userID);
     return $this->processForm($user, $parameters, 'PUT');
 }