/**
  * @param Request $request
  * @param UserRepository $userRepository
  * @return Response
  */
 public function login(Request $request, UserRepository $userRepository)
 {
     $this->validate($request, ['email' => 'required|email', 'password' => 'required']);
     $user = $userRepository->findByCredentials($request->email, $request->password);
     if (!$user instanceof User) {
         throw new HttpException(Response::HTTP_UNAUTHORIZED);
     }
     return $this->response($user->makeVisible('api_token'));
 }
 public function testItShould_notFindUserByCredentials_wrongPassword()
 {
     $this->assertNull($this->repository->findByCredentials($this->createUser()->email, uniqid()));
 }