From 2b8a58c68ce53e94070e61f08e28ca0a354f3686 Mon Sep 17 00:00:00 2001 From: Stef Heyenrath Date: Fri, 2 Mar 2018 14:35:10 +0100 Subject: [PATCH] #100 --- .../RequestWithBodyTests.cs | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/test/WireMock.Net.Tests/RequestWithBodyTests.cs b/test/WireMock.Net.Tests/RequestWithBodyTests.cs index ee22e936..c773b5b9 100644 --- a/test/WireMock.Net.Tests/RequestWithBodyTests.cs +++ b/test/WireMock.Net.Tests/RequestWithBodyTests.cs @@ -276,7 +276,7 @@ namespace WireMock.Net.Tests Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); } [Fact] - public void Request_WithBodyAsJson_Array_JsonPathMatcher_true() + public void Request_WithBodyAsJson_Array_JsonPathMatcher_1() { // given var spec = Request.Create().UsingAnyVerb().WithBody(new JsonPathMatcher("$.books[?(@.price < 10)]")); @@ -296,6 +296,28 @@ namespace WireMock.Net.Tests Check.That(spec.GetMatchingScore(request, requestMatchResult)).IsEqualTo(1.0); } + [Fact] + public void Request_WithBodyAsJson_Array_JsonPathMatcher_2() + { + // given + var spec = Request.Create().UsingAnyVerb().WithBody(new JsonPathMatcher("$..[?(@.Id == 1)]")); + + // when + string jsonString = "{ \"Id\": 1, \"Name\": \"Test\" }"; + var bodyData = new BodyData + { + BodyAsJson = JsonConvert.DeserializeObject(jsonString), + Encoding = Encoding.UTF8 + }; + + var request = new RequestMessage(new Uri("http://localhost/foo"), "PUT", ClientIp, bodyData); + + // then + var requestMatchResult = new RequestMatchResult(); + double result = spec.GetMatchingScore(request, requestMatchResult); + Check.That(result).IsEqualTo(1.0); + } + [Fact] public void Request_WithBodyAsObject_ExactObjectMatcher_true() {