public void GetRoutePattern_NoRouteData() { var configuration = GetDefaultConfig(); var request = new HttpRequestMessage(HttpMethod.Get, "http://google.com/x/y/z?a=b&c=d"); var routePatternProvider = new ConventionalRoutePatternProvider(configuration); Assert.AreEqual("/x/y/z", routePatternProvider.GetRoutePattern(request)); }
public void BuildRoutePattern(string routeTemplate, string url, string exptectedPattern) { // arg var configuration = new HttpConfiguration(); configuration.Routes.MapHttpRoute("test", routeTemplate, new {id = RouteParameter.Optional}); var request = new HttpRequestMessage(HttpMethod.Get, url); var routePatternProvider = new ConventionalRoutePatternProvider(configuration); var routeData = configuration.Routes.GetRouteData(request); request.Properties.Add(HttpPropertyKeys.HttpRouteDataKey, routeData); // act var routePattern = routePatternProvider.GetRoutePattern(request); // asrt Assert.AreEqual(exptectedPattern, routePattern); }