public void Does_handle_ignored_routes() { var restPath = new RestPath(typeof(IgnoreRoute3), "/ignore/{ignore}/with/{name}"); var pathComponents = RestPath.GetPathPartsForMatching("/ignore/AnyThing/with/foo"); var score = restPath.MatchScore("GET", pathComponents); Assert.That(score, Is.GreaterThan(0)); var request = (IgnoreRoute3)restPath.CreateRequest("/ignore/AnyThing/with/foo"); Assert.That(request.Name, Is.EqualTo("foo")); }
private static void AssertMatch(string definitionPath, string requestPath, string firstMatchHashKey, SlugRequest expectedRequest, int expectedScore) { var restPath = new RestPath(typeof(SlugRequest), definitionPath); var requestTestPath = RestPath.GetPathPartsForMatching(requestPath); Assert.That(restPath.IsMatch("GET", requestTestPath), Is.True); Assert.That(firstMatchHashKey, Is.EqualTo(restPath.FirstMatchHashKey)); var actualRequest = restPath.CreateRequest(requestPath) as SlugRequest; Assert.That(actualRequest, Is.Not.Null); Assert.That(actualRequest.Slug, Is.EqualTo(expectedRequest.Slug)); Assert.That(actualRequest.Version, Is.EqualTo(expectedRequest.Version)); Assert.That(actualRequest.Options, Is.EqualTo(expectedRequest.Options)); Assert.That(restPath.MatchScore("GET", requestTestPath), Is.EqualTo(expectedScore)); }