public Task ItShouldFireOnSendingHeaders() { var stateObject = new object(); bool onSendingHeadersFired = false; bool stateObjectMatched = false; var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, env => { var onSendingHeadersRegister = env.Get <Action <Action <object>, object> >("server.OnSendingHeaders"); onSendingHeadersRegister( passedObject => { onSendingHeadersFired = true; stateObjectMatched = object.ReferenceEquals(passedObject, stateObject); }, stateObject); return(TaskHelpers.Completed()); }); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta"))); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); onSendingHeadersFired.ShouldBe(true); stateObjectMatched.ShouldBe(true); })); }
public static void RegisterRoutes(RouteCollection routes) { var settings = new FriendlyUrlSettings(); settings.AutoRedirectMode = RedirectMode.Permanent; routes.EnableFriendlyUrls(settings); routes.MapOwinPath("/Pages/LoginPage.aspx"); }
public void AddOwinRouteOnRouteCollectionShouldReturnNullForMismatchedPaths() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/beta")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldBe(null); }
public void ItShouldNotMatchShorterRequestPaths() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alph")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldBe(null); }
public void ItShouldNotMatchWhenTrailingSlashIsAbsent() { var routes = new RouteCollection(); routes.MapOwinPath("alpha/"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alpha")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldBe(null); }
public static void RegisterSwagger(RouteCollection routes) { routes.MapOwinPath("swagger", app => { app.UseSwaggerUi3(typeof(SwaggerConfig).Assembly, settings => { settings.GeneratorSettings.Title = "CurrencyConverter API"; settings.MiddlewareBasePath = "/swagger"; }); }); }
public void AddOwinRouteOnRouteCollectionShouldMatchGivenPath() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alpha")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldNotBe(null); routeData.RouteHandler.ShouldBeTypeOf<OwinRouteHandler>(); }
public void ItShouldNotMatchPrefixOfLongerSegment() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alphabeta")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldBe(null); }
public void QueryStringShouldNotAffectMatch() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alpha?gamma=delta")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldNotBe(null); routeData.RouteHandler.ShouldBeTypeOf <OwinRouteHandler>(); }
public void AddOwinRouteOnRouteCollectionShouldMatchGivenPath() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alpha")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldNotBe(null); routeData.RouteHandler.ShouldBeTypeOf <OwinRouteHandler>(); }
public Task ItShouldContainGivenRequestMethod() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"), "DELTA")); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestMethod", "DELTA"); }); }
public Task ItShouldContainRequestContextAndAnHttpContextBaseWhenCalledThroughRoute() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"))); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue(typeof(RequestContext).FullName, requestContext); WasCalledInput.ShouldContainKey(typeof(HttpContextBase).FullName); }); }
public Task ItShouldHaveEmptyPathBaseAndAbsolutePath() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta"))); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestPathBase", string.Empty); WasCalledInput.ShouldContainKeyAndValue("owin.RequestPath", "/alpha/beta"); }); }
public Task AppDelegateAccessorPassesFromRouteCollectionThroughToOwinHttpHandler() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost")); RequestContext requestContext = NewRequestContext(routes, httpContext); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith(_ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); })); }
public Task ItShouldHaveUnparsedAndEscapedQueryString() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta?gamma=delta&omega=%2fepsilon"))); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestQueryString", "gamma=delta&omega=%2fepsilon"); })); }
public Task ItShouldContainGivenRequestMethod() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"), "DELTA")); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestMethod", "DELTA"); })); }
public Task ItShouldHaveEmptyPathBaseAndAbsolutePath() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta"))); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestPathBase", string.Empty); WasCalledInput.ShouldContainKeyAndValue("owin.RequestPath", "/alpha/beta"); })); }
public Task ItShouldContainRequestContextAndAnHttpContextBaseWhenCalledThroughRoute() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"))); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue(typeof(RequestContext).FullName, requestContext); WasCalledInput.ShouldContainKey(typeof(HttpContextBase).FullName); })); }
public Task ItShouldContainAllOwinStandardKeys() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"))); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKey("owin.RequestMethod"); WasCalledInput.ShouldContainKey("owin.RequestPath"); WasCalledInput.ShouldContainKey("owin.RequestPathBase"); WasCalledInput.ShouldContainKey("owin.RequestQueryString"); WasCalledInput.ShouldContainKey("owin.RequestScheme"); WasCalledInput.ShouldContainKey("owin.Version"); }); }
public Task ItShouldContainAllOwinStandardKeys() { var routes = new RouteCollection(); routes.MapOwinPath <AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost"))); Task task = ExecuteRequestContext(requestContext); return(task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKey("owin.RequestMethod"); WasCalledInput.ShouldContainKey("owin.RequestPath"); WasCalledInput.ShouldContainKey("owin.RequestPathBase"); WasCalledInput.ShouldContainKey("owin.RequestQueryString"); WasCalledInput.ShouldContainKey("owin.RequestScheme"); WasCalledInput.ShouldContainKey("owin.Version"); })); }
public void QueryStringShouldNotAffectMatch() { var routes = new RouteCollection(); routes.MapOwinPath("alpha"); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost/alpha?gamma=delta")); RouteData routeData = routes.GetRouteData(httpContext); routeData.ShouldNotBe(null); routeData.RouteHandler.ShouldBeTypeOf<OwinRouteHandler>(); }
public Task ItShouldFireOnSendingHeaders() { var stateObject = new object(); bool onSendingHeadersFired = false; bool stateObjectMatched = false; var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, env => { var onSendingHeadersRegister = env.Get<Action<Action<object>, object>>("server.OnSendingHeaders"); onSendingHeadersRegister( passedObject => { onSendingHeadersFired = true; stateObjectMatched = object.ReferenceEquals(passedObject, stateObject); }, stateObject); return Utils.CompletedTask; }); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta"))); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); onSendingHeadersFired.ShouldBe(true); stateObjectMatched.ShouldBe(true); }); }
public Task ItShouldHaveUnparsedAndEscapedQueryString() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); RequestContext requestContext = NewRequestContext(routes, NewHttpContext(new Uri("http://localhost/alpha/beta?gamma=delta&omega=%2fepsilon"))); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith( _ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); WasCalledInput.ShouldContainKeyAndValue("owin.RequestQueryString", "gamma=delta&omega=%2fepsilon"); }); }
public Task AppDelegateAccessorPassesFromRouteCollectionThroughToOwinHttpHandler() { var routes = new RouteCollection(); routes.MapOwinPath<AppDelegate>(string.Empty, WasCalledApp); FakeHttpContext httpContext = NewHttpContext(new Uri("http://localhost")); RequestContext requestContext = NewRequestContext(routes, httpContext); Task task = ExecuteRequestContext(requestContext); return task.ContinueWith(_ => { task.Exception.ShouldBe(null); WasCalled.ShouldBe(true); }); }