/** * @dataProvider providerGetUser */ public function testGetUserWithGeneratedPassword($userName, $password) { $generator = $this->getMock('Kata\\Registration\\Generator'); $generator->expects($this->once())->method('getPassword')->willReturn($password); $user = $this->userBuilder->getUserWithGeneratedPassword($userName, $generator); $this->assertEquals($user->getName(), $userName); $this->assertEquals($user->getPassword(), $password); $this->assertEquals($user->getHashedPassword(), $password . UserBuilder::$salt); }
/** * Create a registration. * * @param Request $request * * @return Response */ public function doRegistration(Request $request) { try { $this->validator->isValidUserName(); $this->validator->isValidPassword(); $user = $this->userBuilder->getUser($request->getUserName(), $request->getPassword()); $userId = $this->userDao->create($user); return new Response('yes', '201', $userId); } catch (InvalidUserNameException $exception) { return new Response('no', '601', ''); } catch (InvalidPasswordException $exception) { return new Response('no', '602', ''); } catch (UserExistsException $exception) { return new Response('no', '701', ''); } catch (Exception $exception) { return new Response('no', '500', ''); } }