public function testRedirectsToHomepageIfUserIsActive()
 {
     $this->user->SetStatus(AccountStatus::ACTIVE);
     $this->user->ChangeDefaultHomePage(2);
     $this->postRegistration->HandleSelfRegistration($this->user, $this->page, $this->context);
     $this->assertTrue($this->fakeAuth->_LoginCalled);
     $this->assertEquals($this->user->EmailAddress(), $this->fakeAuth->_LastLogin);
     $this->assertFalse($this->fakeAuth->_LastLoginContext->GetData()->Persist);
     $this->assertEquals(Pages::UrlFromId(2), $this->page->_RedirectDestination);
 }
 public function testActivatesAccount()
 {
     $user = new FakeUser(12);
     $activationSuccess = new ActivationResult(true, $user);
     $this->accountActivation->_ActivationResult = $activationSuccess;
     $activationCode = uniqid();
     $this->page->expects($this->once())->method('GetActivationCode')->will($this->returnValue($activationCode));
     $this->page->expects($this->once())->method('Redirect')->with($this->equalTo(Pages::UrlFromId($user->Homepage())));
     $this->presenter->PageLoad();
     $this->assertEquals($activationCode, $this->accountActivation->_LastActivationCode);
     $this->assertTrue($this->auth->_LoginCalled);
     $this->assertEquals($user->EmailAddress(), $this->auth->_LastLogin);
     $this->assertEquals(new WebLoginContext(new LoginData(false, $user->Language())), $this->auth->_LastLoginContext);
 }