public function testProceed() { $user = UserEntityProvider::createEntityWithRandomData(); $userId = $user->getId(); $this->userRepositoryMock->expects($this->once())->method('find')->with($userId)->willReturn($user); $this->authenticationServiceMock->expects($this->once())->method('getStorage')->willReturnSelf(); $this->authenticationServiceMock->expects($this->once())->method('write')->with($user->getId()); $this->testedObject->proceed($userId); }
public function testProceed_WhenUserDoesNotHaveAnEmail() { $identity = uniqid('identity'); $user = UserEntityProvider::createEntityWithRandomData(array('email' => null)); $this->inputFilterMock->expects($this->once())->method('isValid')->willReturn(true); $this->inputFilterMock->expects($this->once())->method('getValue')->with('identity')->willReturn($identity); $this->userRepositoryMock->expects($this->once())->method('findByLoginOrEmail')->with($identity)->willReturn($user); $this->setExpectedException('Auth\\Service\\Exception\\UserDoesNotHaveAnEmailException', 'User does not have an email'); $this->testedObject->proceed($this->inputFilterMock, $this->mailerPluginMock, $this->urlPluginMock); }
/** */ public function testAction() { $queryName = uniqid('query'); list($data, $expected) = $this->prepareDataAndExpected(); $user = UserEntityProvider::createEntityWithRandomData(); $request = new Request(); $request->setMethod(Request::METHOD_GET); $request->setQuery(new Parameters(array('q' => $queryName))); $this->authControllerPluginMock->expects($this->once())->method('__invoke')->with(null)->will($this->returnSelf()); $this->authControllerPluginMock->expects($this->once())->method('getUser')->willReturn($user); $this->organizationRepoMock->expects($this->once())->method('getTypeAheadResults')->with($queryName, $user)->willReturn($data); /** @var JsonModel $result */ $result = $this->controller->dispatch($request); $this->assertResponseStatusCode(Response::STATUS_CODE_200); $this->assertSame($expected, $result->getVariables()); }
public function testProceed() { $tokenHash = uniqid('tokenHash'); $expirationDate = new \DateTime(); $expirationDate->modify('+1 hour'); $token = new Token(); $token->setExpirationDate($expirationDate)->setHash($tokenHash); $expiredToken = new Token(); $expiredToken->setExpirationDate(new \DateTime('2014-01-01 00:00:00')); $expiredToken->setHash(uniqid('tokenHash')); $user = UserEntityProvider::createEntityWithRandomData(); $user->getTokens()->add($token); $user->getTokens()->add($expiredToken); $userId = $user->getId(); $this->userRepositoryMock->expects($this->once())->method('findOneBy')->with(array('id' => new \MongoId($userId), 'tokens.hash' => $tokenHash))->willReturn($user); $this->repositoryServiceMock->expects($this->once())->method('remove')->with($expiredToken); $this->authenticationServiceMock->expects($this->once())->method('getStorage')->willReturnSelf(); $this->authenticationServiceMock->expects($this->once())->method('write')->with($user->getId()); $this->testedObject->proceed($userId, $tokenHash); }
public function testProceed() { $name = uniqid('name') . ' ' . uniqid('surname'); $email = uniqid('email') . '@' . uniqid('host') . '.com.pl'; $user = UserEntityProvider::createEntityWithRandomData(); $confirmationLink = uniqid('confirmationLink'); $self = $this; $this->inputFilterMock->expects($this->once())->method('isValid')->willReturn(true); $this->inputFilterMock->expects($this->once())->method('get')->with('register')->willReturnSelf(); $this->inputFilterMock->expects($this->exactly(2))->method('getValue')->willReturnOnConsecutiveCalls($name, $email); $this->userRepositoryMock->expects($this->once())->method('findByLoginOrEmail')->with($email)->willReturn(null); $user->setLogin($email)->setRole(User::ROLE_RECRUITER); $this->userRepositoryMock->expects($this->once())->method('create')->with(array('login' => $email, 'role' => User::ROLE_RECRUITER))->willReturn($user); $this->userRepositoryMock->expects($this->once())->method('store')->with($this->callback(function ($user) use($self) { $self->assertInstanceOf('Auth\\Entity\\User', $user); return $user; })); $this->urlPluginMock->expects($this->once())->method('fromRoute')->with('lang/register-confirmation', array('userId' => $user->getId()), array('force_canonical' => true))->willReturn($confirmationLink); $this->mailServiceMock->expects($this->once())->method('get')->with('htmltemplate')->willReturn($this->mailMock); $this->testedObject->proceed($this->inputFilterMock, $this->mailerPluginMock, $this->urlPluginMock); }
public function testIndexAction_WithPostRequest() { $postData = array('valid data'); $request = new Request(); $request->setMethod(Request::METHOD_POST); $request->setPost(new Parameters($postData)); $userEntity = UserEntityProvider::createEntityWithRandomData(); $this->authenticationServiceMock->expects($this->once())->method('getUser')->willReturn($userEntity); $this->formMock->expects($this->once())->method('bind')->with($userEntity); $this->formMock->expects($this->once())->method('setData')->with($postData); $this->formMock->expects($this->once())->method('isValid')->willReturn(true); $this->repositoriesMock->expects($this->once())->method('store')->with($userEntity); $result = $this->controller->dispatch($request); $expected = array('valid' => true, 'form' => $this->formMock); $this->assertResponseStatusCode(Response::STATUS_CODE_200); $this->assertSame($expected, $result); }
/** * Creates and authenticates a user. * * @param array $params * * @return User */ protected function authenticateUser(array $params = array()) { $userEntity = UserEntityProvider::createEntityWithRandomData($params); $this->prepareAuthenticateMock(true, $userEntity); return $userEntity; }