protected override void When() { Entity.Stub(x => x.ContentLength).Return(EntityContentLength); Entity.Stub(x => x.CompressionType).Return(EntityCompressionType); Entity.Stub(x => x.ContentType).Return(EntityContentType); HttpResponseHeaderHelper .Stub(x => x.SetContentEncoding(HttpResponse, ResponseCompressionType)) .Callback((HttpResponseBase httpResponse, ResponseCompressionType responseCompressionType) => { ResponseCompressionTypeSet = responseCompressionType; return(true); }); HttpResponseHeaderHelper .Stub(x => x.AppendHeader(HttpResponse, EntityResponseFull.HttpHeaderContentLength, EntityContentLength.ToString())) .Callback((HttpResponseBase httpResponse, string httpResponseHeader, string headerValue) => { ContentLengthSet = headerValue; return(true); }); HttpResponse.Stub(x => x.ContentType).PropertyBehavior(); HttpResponse.Stub(x => x.Filter).PropertyBehavior(); HttpResponse.Filter = new MemoryStream(); SystemUnderTest.SendHeaders(HttpResponse, ResponseCompressionType, Entity); }
public void SetUp() { _mockRepository = new MockRepository(); _rootFunction = new TestFunction(); PrivateInvoke.InvokeNonPublicMethod(_rootFunction, "SetFunctionToken", "RootFunction"); _subFunction = _mockRepository.PartialMock <TestFunction>(); _httpContextMock = _mockRepository.DynamicMock <HttpContextBase>(); _pageExecutorMock = _mockRepository.StrictMock <IWxePageExecutor>(); _functionState = new WxeFunctionState(_rootFunction, true); _pageStep = _mockRepository.PartialMock <WxePageStep> ("ThePage"); _pageStep.SetPageExecutor(_pageExecutorMock); _rootFunction.Add(_pageStep); _pageMock = _mockRepository.DynamicMock <IWxePage>(); _postBackCollection = new NameValueCollection { { "Key", "Value" } }; _wxeHandler = new WxeHandler(); UrlMappingConfiguration.Current.Mappings.Add(new UrlMappingEntry(_rootFunction.GetType(), "~/root.wxe")); UrlMappingConfiguration.Current.Mappings.Add(new UrlMappingEntry(_subFunction.GetType(), "~/sub.wxe")); _functionStateManager = new WxeFunctionStateManager(new FakeHttpSessionStateBase()); Uri uri = new Uri("http://localhost/root.wxe"); _responseMock = _mockRepository.StrictMock <HttpResponseBase>(); _responseMock.Stub(stub => stub.ApplyAppPathModifier("~/sub.wxe")).Return("/session/sub.wxe").Repeat.Any(); _responseMock.Stub(stub => stub.ApplyAppPathModifier("/session/sub.wxe")).Return("/session/sub.wxe").Repeat.Any(); _responseMock.Stub(stub => stub.ApplyAppPathModifier("~/root.wxe")).Return("/session/root.wxe").Repeat.Any(); _responseMock.Stub(stub => stub.ApplyAppPathModifier("/session/root.wxe")).Return("/session/root.wxe").Repeat.Any(); _responseMock.Stub(stub => stub.ContentEncoding).Return(Encoding.Default).Repeat.Any(); _httpContextMock.Stub(stub => stub.Response).Return(_responseMock).Repeat.Any(); _requestMock = _mockRepository.StrictMock <HttpRequestBase>(); _requestMock.Stub(stub => stub.Url).Return(uri).Repeat.Any(); _httpContextMock.Stub(stub => stub.Request).Return(_requestMock).Repeat.Any(); _wxeContext = new WxeContext(_httpContextMock, _functionStateManager, _functionState, new NameValueCollection()); WxeContextMock.SetCurrent(_wxeContext); }
public void Initialise() { request = MockRepository.GenerateStub <HttpRequestBase>(); request.Stub(r => r.Headers).Return(new NameValueCollection()); request.Stub(r => r.QueryString).Return(new NameValueCollection()); request.Stub(r => r.ApplicationPath).Return("/"); request.Stub(r => r.Url).Return(new Uri("http://www.example.com/")); response = MockRepository.GenerateStub <HttpResponseBase>(); response.Stub(r => r.Headers).Return(new NameValueCollection()); }
private HttpContextBase CreateHttpContext(string url, string method) { HttpRequestBase request = MockRepository.GenerateStub <HttpRequestBase>(); request.Stub(s => s.AppRelativeCurrentExecutionFilePath).Return(url); request.Stub(s => s.HttpMethod).Return(method); HttpResponseBase response = MockRepository.GenerateStub <HttpResponseBase>(); response.Stub(s => s.ApplyAppPathModifier(Arg <string> .Is.Anything)).Return(url); HttpContextBase context = MockRepository.GenerateStub <HttpContextBase>(); context.Stub(s => s.Request).Return(request); context.Stub(s => s.Response).Return(response); return(context); }
protected override void Initialize() { base.Initialize(); HttpResponseBase response = MockRepository.GenerateMock <HttpResponseBase> (); HttpContext.Stub(mock => mock.Response).Return(response); response.Stub(mock => mock.ContentType).Return("text/html"); HttpBrowserCapabilities browser = new HttpBrowserCapabilities(); browser.Capabilities = new Hashtable(); browser.Capabilities.Add("browser", "IE"); browser.Capabilities.Add("majorversion", "7"); var request = MockRepository.GenerateStub <HttpRequestBase> (); request.Stub(stub => stub.Browser).Return(new HttpBrowserCapabilitiesWrapper(browser)); HttpContext.Stub(stub => stub.Request).Return(request); }
public void SetFixture(MockRepository mocks) { var securedFilter = new OAuthSecuredAttribute(); var mockControllerBase = mocks.DynamicMock <ControllerBase>(); var mockHttpContext = mocks.DynamicMock <HttpContextBase>(); mockResponse = mocks.DynamicMock <HttpResponseBase>(); contextBuilder = mocks.DynamicMock <IOAuthContextBuilder>(); oauthContext = mocks.DynamicMock <IOAuthContext>(); var httpRequest = mocks.DynamicMock <HttpRequestBase>(); var controllerContext = new ControllerContext(mockHttpContext, new RouteData(), mockControllerBase); var filterContext = new ResultExecutedContext(controllerContext, new EmptyResult(), false, null); mockHttpContext.Stub(context => context.Response).Return(mockResponse); mockHttpContext.Stub(context => context.Request).Return(httpRequest); mockResponse.Stub(response => response.Headers).Return(Headers); contextBuilder.Stub(builder => builder.FromHttpRequest(httpRequest)).Return(oauthContext); oauthContext.Stub(context => context.Realm).Return(DefaultRealm); mocks.ReplayAll(); securedFilter.OAuthContextBuilder = contextBuilder; securedFilter.OnResultExecuted(filterContext); }
public void Test_SubFunction_RedirectToPermaUrl() { WxeContextMock.SetCurrent(_wxeContext); Uri uri = new Uri("http://localhost/root.wxe"); HttpResponseBase responseMock = _mockRepository.StrictMock <HttpResponseBase>(); responseMock.Stub(stub => stub.ApplyAppPathModifier("~/sub.wxe")).Return("/session/sub.wxe").Repeat.Any(); responseMock.Stub(stub => stub.ApplyAppPathModifier("/session/sub.wxe")).Return("/session/sub.wxe").Repeat.Any(); responseMock.Stub(stub => stub.ApplyAppPathModifier("/root.wxe")).Return("/session/root.wxe").Repeat.Any(); responseMock.Stub(stub => stub.ApplyAppPathModifier("/session/root.wxe")).Return("/session/root.wxe").Repeat.Any(); responseMock.Stub(stub => stub.ContentEncoding).Return(Encoding.Default).Repeat.Any(); _httpContextMock.Stub(stub => stub.Response).Return(responseMock).Repeat.Any(); HttpRequestBase requestMock = _mockRepository.StrictMock <HttpRequestBase>(); requestMock.Stub(stub => stub.Url).Return(uri).Repeat.Any(); _httpContextMock.Stub(stub => stub.Request).Return(requestMock).Repeat.Any(); using (_mockRepository.Ordered()) { using (_mockRepository.Unordered()) { _pageMock.Expect(mock => mock.GetPostBackCollection()).Return(_postBackCollection); _pageMock.Expect(mock => mock.SaveAllState()); _pageMock.Expect(mock => mock.WxeHandler).Return(_wxeHandler); } //Redirect to subfunction responseMock.Expect(mock => mock.Redirect("/session/sub.wxe?WxeFunctionToken=" + _wxeContext.FunctionToken)) .WhenCalled(invocation => Thread.CurrentThread.Abort()); //Show sub function _subFunction.Expect(mock => mock.Execute(_wxeContext)).WhenCalled(invocation => Thread.CurrentThread.Abort()); //Return from sub function _subFunction.Expect(mock => mock.Execute(_wxeContext)).Throw(new WxeExecuteNextStepException()); //Return from sub function responseMock.Expect(mock => mock.Redirect("/session/root.wxe?WxeFunctionToken=" + _wxeContext.FunctionToken)) .WhenCalled( invocation => { PrivateInvoke.SetNonPublicField(_functionState, "_postBackID", 100); _pageStep.SetPostBackCollection(new NameValueCollection()); Thread.CurrentThread.Abort(); }); _pageExecutorMock.Expect(mock => mock.ExecutePage(_wxeContext, "~/ThePage", true)).WhenCalled( invocation => { Assert.That(((IExecutionStateContext)_pageStep).ExecutionState, Is.SameAs(NullExecutionState.Null)); Assert.That(_pageStep.PostBackCollection[WxePageInfo.PostBackSequenceNumberID], Is.EqualTo("100")); Assert.That(_pageStep.PostBackCollection.AllKeys, Has.Member("Key")); Assert.That(_pageStep.ReturningFunction, Is.SameAs(_subFunction)); Assert.That(_pageStep.IsReturningPostBack, Is.True); }); } _mockRepository.ReplayAll(); WxePermaUrlOptions permaUrlOptions = new WxePermaUrlOptions(); try { //Redirect to subfunction WxeRepostOptions repostOptions = WxeRepostOptions.DoRepost(null); _pageStep.ExecuteFunction(new PreProcessingSubFunctionStateParameters(_pageMock, _subFunction, permaUrlOptions), repostOptions); Assert.Fail(); } catch (ThreadAbortException) { Thread.ResetAbort(); } try { //Show sub function _pageStep.Execute(); Assert.Fail(); } catch (ThreadAbortException) { Thread.ResetAbort(); } try { //Return from sub function _pageStep.Execute(); Assert.Fail(); } catch (WxeExecuteNextStepException) { } try { //Return from sub function _pageStep.Execute(); Assert.Fail(); } catch (ThreadAbortException) { Thread.ResetAbort(); } //Show current page _pageStep.Execute(); _mockRepository.VerifyAll(); }