public void Request_WithPaths() { var requestBuilder = Request.Create().WithPath("/x1", "/x2"); var request1 = new RequestMessage(new Uri("http://localhost/x1"), "blabla", ClientIp); var request2 = new RequestMessage(new Uri("http://localhost/x2"), "blabla", ClientIp); var requestMatchResult = new RequestMatchResult(); Check.That(requestBuilder.GetMatchingScore(request1, requestMatchResult)).IsEqualTo(1.0); Check.That(requestBuilder.GetMatchingScore(request2, requestMatchResult)).IsEqualTo(1.0); }
public void Should_specify_requests_matching_given_paths() { var requestBuilder = Request.Create().WithPath("/x1", "/x2"); var request1 = new RequestMessage(new Uri("http://localhost/x1"), "blabla"); var request2 = new RequestMessage(new Uri("http://localhost/x2"), "blabla"); var requestMatchResult = new RequestMatchResult(); Check.That(requestBuilder.GetMatchingScore(request1, requestMatchResult)).IsEqualTo(1.0); Check.That(requestBuilder.GetMatchingScore(request2, requestMatchResult)).IsEqualTo(1.0); }
public void Should_exclude_requests_not_matching_given_params() { // given var spec = Request.Create().WithParam("bar", "1"); // when var request = new RequestMessage(new UrlDetails("http://localhost/test=7"), "PUT", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsNotEqualTo(1.0); }
public void Request_WithClientIP_WildcardMatcher() { // given var spec = Request.Create().WithClientIP(new WildcardMatcher("127.0.0.2")); // when var request = new RequestMessage(new UrlDetails("http://localhost"), "GET", "127.0.0.2"); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void Should_specify_requests_matching_given_param_func() { // given var spec = Request.Create().UsingAnyMethod().WithParam(p => p.ContainsKey("bar")); // when var request = new RequestMessage(new UrlDetails("http://localhost/foo?bar=1&bar=2"), "PUT", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void Should_specify_requests_matching_given_path_prefix() { // given var spec = Request.Create().WithPath(new RegexMatcher("^/foo")); // when var request = new RequestMessage(new Uri("http://localhost/foo/bar"), "blabla"); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void Should_exclude_requests_not_matching_given_path() { // given var spec = Request.Create().WithPath("/foo"); // when var request = new RequestMessage(new Uri("http://localhost/bar"), "blabla"); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsNotEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_KeyWith2ValuesPresentInUrl_And_With1ExactStringWith3Patterns_Returns0_66() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost?key=test1,test2"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", false, new IStringMatcher[] { new ExactMatcher("test1", "test2", "test3") }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsCloseTo(0.66d, 0.1d); }
public void Should_exclude_requests_matching_given_path_but_not_http_method() { // given var spec = Request.Create().WithPath("/foo").UsingPut(); // when var request = new RequestMessage(new Uri("http://localhost/foo"), "HEAD", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsNotEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_PartialMatch() { // Assign var requestMessage = new RequestMessage(new Uri("http://localhost?key=test0,test2"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher("key", new[] { "test1", "test2" }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(0.5d); }
public void Request_WithPathFunc() { // given var spec = Request.Create().WithPath(url => url.EndsWith("/foo")); // when var request = new RequestMessage(new UrlDetails("http://localhost/foo"), "blabla", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void Request_WithClientIP_Match_Fail() { // given var spec = Request.Create().WithClientIP("127.0.0.2"); // when var request = new RequestMessage(new Uri("http://localhost"), "GET", "192.1.1.1"); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(0.0); }
public void RequestMessageCompositeMatcher_GetMatchingScore_EmptyArray() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost"), "GET", "127.0.0.1"); var matcher = new Helper(Enumerable.Empty <IRequestMatcher>()); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(0.0d); }
public void RequestMessageParamMatcher_GetMatchingScore_OnlyKeyPresent() { // Assign var requestMessage = new RequestMessage(new Uri("http://localhost?key"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", new[] { "test1", "test2" }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(0.0d); }
public void Request_WithClientIP_Func() { // given var spec = Request.Create().WithClientIP(c => c.Contains(".")); // when var request = new RequestMessage(new Uri("http://localhost"), "GET", "127.0.0.2"); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_KeyWith2ValuesPresentInUrl_And_With2Strings_Returns1_0() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost?key=test1,test2"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", false, new[] { "test1", "test2" }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void Request_WithUrl_WildcardMatcher() { // given var spec = Request.Create().WithUrl(new WildcardMatcher("*/foo")); // when var request = new RequestMessage(new Uri("http://localhost/foo"), "blabla", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void RequestMessageHeaderMatcher_GetMatchingScore_RejectOnMatch_HeaderDoesNotExists() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost"), "GET", "127.0.0.1"); var matcher = new RequestMessageHeaderMatcher(MatchBehaviour.RejectOnMatch, "h", "x", true); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void RequestMessageParamMatcher_GetMatchingScore_OnlyKeyPresent_WithNull() { // Assign var requestMessage = new RequestMessage(new Uri("http://localhost?key"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher("key"); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void RequestMessageParamMatcher_GetMatchingScore_KeyWithValuePresentInUrl_MatchOnKey() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://[email protected]"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", false); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void Should_specify_requests_matching_given_url_exact() { // given var spec = Request.Create().WithUrl("http://localhost/foo"); // when var request = new RequestMessage(new Uri("http://localhost/foo"), "blabla", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void RequestMessageCookieMatcher_GetMatchingScore_AcceptOnMatch_CookieDoesNotExists() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost"), "GET", "127.0.0.1"); var matcher = new RequestMessageCookieMatcher(MatchBehaviour.AcceptOnMatch, "c", false, "x"); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(0.0d); }
public void Should_specify_requests_matching_given_path_and_method_patch() { // given var spec = Request.Create().WithPath("/foo").UsingPatch(); // when var request = new RequestMessage(new Uri("http://localhost/foo"), "PATCH", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void Should_specify_requests_matching_given_param() { // given var spec = Request.Create().WithParam("bar", "1", "2"); // when var request = new RequestMessage(new Uri("http://localhost/foo?bar=1&bar=2"), "PUT", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_OnlyKeyPresentInUrl_MatchOnKeyWithEmptyArray() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost?key"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", new string[] { }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void Request_WithPathRegexMatcher_HasMatch() { // given var spec = Request.Create().WithPath(new RegexMatcher("^/foo")); // when var request = new RequestMessage(new UrlDetails("http://localhost/foo/bar"), "blabla", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_KeyWithValuesPresentInUrl_MatchOnKeyWithValues_PartialMatch() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost?key=test0,test2"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", new[] { "test1", "test2" }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(0.5d); }
public void Request_WithPathRegex_false() { // given var spec = Request.Create().WithPath("/foo"); // when var request = new RequestMessage(new Uri("http://localhost/bar"), "blabla", ClientIp); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsNotEqualTo(1.0); }
public void RequestMessageParamMatcher_GetMatchingScore_KeyWithValuesPresentInUrl_MatchExactOnExactMatchers() { // Assign var requestMessage = new RequestMessage(new UrlDetails("http://localhost?key=test1,test2"), "GET", "127.0.0.1"); var matcher = new RequestMessageParamMatcher(MatchBehaviour.AcceptOnMatch, "key", new IStringMatcher[] { new ExactMatcher("test1"), new ExactMatcher("test2") }); // Act var result = new RequestMatchResult(); double score = matcher.GetMatchingScore(requestMessage, result); // Assert Check.That(score).IsEqualTo(1.0d); }
public void Request_WithPath_Spaces() { // Assign var spec = Request.Create().WithPath("/path/a b").UsingAnyMethod(); // when var body = new BodyData(); var request = new RequestMessage(new UrlDetails("http://localhost/path/a b"), "GET", ClientIp, body); // then var requestMatchResult = new RequestMatchResult(); Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); }