/** * */ public function setUp() { parent::setUp(); $this->request = $this->getMockBuilder(Request::class)->getMock(); $this->router = $this->getMockBuilder(Router::class)->disableOriginalConstructor()->getMock(); $this->redirectResponse = $this->getMockBuilder(RedirectResponse::class)->disableOriginalConstructor()->getMock(); $this->redirectResponse->expects($this->any())->method('withInput')->willReturnSelf(); $this->redirector = $this->getMockBuilder(Redirector::class)->disableOriginalConstructor()->getMock(); $this->redirector->expects($this->any())->method('route')->willReturn($this->redirectResponse); $this->redirector->expects($this->any())->method('action')->willReturn($this->redirectResponse); $this->redirector->expects($this->any())->method('withInput')->willReturnSelf(); $this->validatorFactory = $this->app->make(Factory::class); }
/** * Should redirect a non-secure request to a secure route. */ public function testRedirectsNonSecureRequestToSecure() { $passedOn = false; $next = function (Request $passedRequest) use(&$passedOn) { $this->assertSame($passedRequest, $this->request); $passedOn = true; }; $this->request->shouldReceive('isSecure')->once()->andReturn(false); $requestUri = 'request uri'; $this->request->shouldReceive('getRequestUri')->once()->andReturn($requestUri); $this->request->headers = new HeaderBag([]); $this->redirector->expects($this->atLeastOnce())->method('to')->with($requestUri, 302, [], true); $this->forceSecure->handle($this->request, $next); $this->assertFalse($passedOn); }