Example #1
0
 /**
  * @return Response
  * @throws UserException
  */
 public function runAction()
 {
     /** @var User $user */
     $user = User::findFirstById($this->getId());
     if ($user) {
         return $this->response($user);
     } else {
         throw new UserException('User not found', 404);
     }
 }
Example #2
0
 /**
  * @return Response
  * @throws UserException
  */
 public function runAction()
 {
     $user = User::findFirstById($this->getId());
     if ($user) {
         $user->delete();
         return $this->response($user);
     } else {
         throw new UserException('User not found', 404);
     }
 }
Example #3
0
 public function testMain()
 {
     /** @var User $userToDelete */
     $userToDelete = $this->getStub()->offsetGet(0);
     $response = $this->delete('/user/' . $userToDelete->getId());
     $responsePayload = $response->json();
     $this->assertEquals(200, $response->getStatusCode());
     $this->assertTrue($responsePayload['success']);
     $this->assertNull($responsePayload['meta']);
     $this->assertEquals($responsePayload['data']['id'], $userToDelete->getId());
     $this->assertEquals($responsePayload['data']['name'], $userToDelete->getName());
     $this->assertEquals($responsePayload['data']['email'], $userToDelete->getEmail());
     /** @var User|boolean $deletedUser */
     $deletedUser = User::findFirstById($userToDelete->getId());
     $this->assertFalse($deletedUser);
 }
Example #4
0
 public function testMain()
 {
     $userFixture = (new UserFixture())->getArray('Create Test');
     $response = $this->post('/user', $userFixture);
     $responsePayload = $response->json();
     $this->assertEquals(200, $response->getStatusCode());
     $this->assertTrue($responsePayload['success']);
     $this->assertNull($responsePayload['meta']);
     $this->assertEquals($responsePayload['data']['name'], $userFixture['name']);
     $this->assertEquals($responsePayload['data']['email'], $userFixture['email']);
     /** @var boolean|User $createdUser */
     $createdUser = User::findFirstById($responsePayload['data']['id']);
     $this->assertNotFalse($createdUser);
     $this->assertEquals($userFixture['name'], $createdUser->getName());
     $this->assertEquals($userFixture['email'], $createdUser->getEmail());
     $isValidPassword = (new Security())->checkHash($userFixture['password'], $createdUser->getPassword());
     $this->assertTrue($isValidPassword);
 }
Example #5
0
 public function testPasswordNotChange()
 {
     /** @var User $userToUpdate */
     $userToUpdate = $this->getStub()->offsetGet(0);
     $userFixture = (new UserFixture())->getArray('Update Test');
     unset($userFixture['password']);
     $response = $this->put('/user/' . $userToUpdate->getId(), $userFixture);
     $responsePayload = $response->json();
     $this->assertEquals(200, $response->getStatusCode());
     $this->assertTrue($responsePayload['success']);
     $this->assertNull($responsePayload['meta']);
     $this->assertEquals($responsePayload['data']['name'], $userFixture['name']);
     $this->assertEquals($responsePayload['data']['email'], $userFixture['email']);
     /** @var User|boolean $userAfterUpdate */
     $userAfterUpdate = User::findFirstById($responsePayload['data']['id']);
     $this->assertNotFalse($userAfterUpdate);
     $this->assertEquals($userFixture['name'], $userAfterUpdate->getName());
     $this->assertEquals($userFixture['email'], $userAfterUpdate->getEmail());
     $this->assertEquals($userToUpdate->getPassword(), $userAfterUpdate->getPassword());
 }
Example #6
0
 /**
  * @return Response
  * @throws UserException
  */
 public function runAction()
 {
     $user = User::findFirstById($this->getId());
     if ($user) {
         $name = $this->getPayload()->getName();
         if (!is_null($name)) {
             $user->setName($name);
         }
         $email = $this->getPayload()->getEmail();
         if (!is_null($email)) {
             $user->setEmail($email);
         }
         $password = $this->getPayload()->getPassword();
         if (!is_null($password)) {
             $user->setPassword($password);
         }
         $user->save();
         return $this->response($user);
     } else {
         throw new UserException('User not found', 404);
     }
 }