public void Compare(ProviderServiceResponse response1, ProviderServiceResponse response2) { if (response1 == null) { _reporter.ReportError("Expected response cannot be null"); return; } _reporter.ReportInfo(String.Format("{0} has status code of {1}", MessagePrefix, response1.Status)); if (!response1.Status.Equals(response2.Status)) { _reporter.ReportError(expected: response1.Status, actual: response2.Status); } if (response1.Headers != null && response1.Headers.Any()) { _httpHeaderComparer.Compare(response1.Headers, response2.Headers); } if (response1.Body != null) { string expectedResponseBodyJson = JsonConvert.SerializeObject(response1.Body); string actualResponseBodyJson = JsonConvert.SerializeObject(response2.Body); var actualResponseBody = JsonConvert.DeserializeObject <JToken>(actualResponseBodyJson); var expectedResponseBody = JsonConvert.DeserializeObject <JToken>(expectedResponseBodyJson); _httpBodyComparer.Validate(expectedResponseBody, actualResponseBody); } }
public ComparisonResult Compare(ProviderServiceResponse expected, ProviderServiceResponse actual) { var result = new ComparisonResult("returns a response which"); if (expected == null) { result.RecordFailure(new ErrorMessageComparisonFailure("Expected response cannot be null")); return(result); } var statusResult = _httpStatusCodeComparer.Compare(expected.Status, actual.Status); result.AddChildResult(statusResult); if (expected.Headers != null && expected.Headers.Any()) { var headerResult = _httpHeaderComparer.Compare(expected.Headers, actual.Headers); result.AddChildResult(headerResult); } if (expected.Body != null) { var bodyResult = _httpBodyComparer.Compare(expected.Body, actual.Body, expected.MatchingRules); result.AddChildResult(bodyResult); } else if (expected.Body == null && expected.ShouldSerializeBody() && //Body was explicitly set actual.Body != null) { result.RecordFailure(new ErrorMessageComparisonFailure("Expected response body was explicitly set to null however the actual response body was not null")); } return(result); }
public void Compare(ProviderServiceRequest request1, ProviderServiceRequest request2) { if (request1 == null) { throw new CompareFailedException("Expected request cannot be null"); } _httpMethodComparer.Compare(request1.Method, request2.Method); _httpPathComparer.Compare(request1.Path, request2.Path); _httpQueryStringComparer.Compare(request1.Query, request2.Query); if (request1.Headers != null && request1.Headers.Any()) { if (request2.Headers == null) { throw new CompareFailedException("Headers are null"); } _httpHeaderComparer.Compare(request1.Headers, request2.Headers); } if (request1.Body != null) { _httpBodyComparer.Validate(request2.Body, request1.Body, true); } }
public void Compare(ProviderServiceRequest expected, ProviderServiceRequest actual) { if (expected == null) { _reporter.ReportError("Expected request cannot be null"); return; } _httpMethodComparer.Compare(expected.Method, actual.Method); _httpPathComparer.Compare(expected.Path, actual.Path); _httpQueryStringComparer.Compare(expected.Query, actual.Query); if (expected.Headers != null && expected.Headers.Any()) { if (actual.Headers == null) { _reporter.ReportError("Headers are null"); } _httpHeaderComparer.Compare(expected.Headers, actual.Headers); } if (expected.Body != null) { _httpBodyComparer.Validate(expected.Body, actual.Body, true); } }
public ComparisonResult Compare(ProviderServiceRequest expected, ProviderServiceRequest actual) { var result = new ComparisonResult("sends a request which"); if (expected == null) { result.RecordFailure(new ErrorMessageComparisonFailure("Expected request cannot be null")); return(result); } var methodResult = _httpMethodComparer.Compare(expected.Method, actual.Method); result.AddChildResult(methodResult); var pathResult = _httpPathComparer.Compare(expected.Path, actual.Path); result.AddChildResult(pathResult); var queryResult = _httpQueryStringComparer.Compare(expected.Query, actual.Query); result.AddChildResult(queryResult); if (expected.Headers != null && expected.Headers.Any()) { var headerResult = _httpHeaderComparer.Compare(expected.Headers, actual.Headers); result.AddChildResult(headerResult); } if (expected.Body != null) { var bodyResult = _httpBodyComparer.Compare(expected.Body, actual.Body, expected.MatchingRules); result.AddChildResult(bodyResult); } else if (expected.Body == null && expected.ShouldSerializeBody() && //Body was explicitly set actual.Body != null) { result.RecordFailure(new ErrorMessageComparisonFailure("Expected request body was explicitly set to null however the actual request body was not null")); } return(result); }