From 57f89a06e19079b425022be01d07650f2488b58e Mon Sep 17 00:00:00 2001 From: Stef Heyenrath Date: Mon, 29 Nov 2021 08:40:39 +0100 Subject: [PATCH] Update WireMockOpenApiParserSettings --- .../Mappers/OpenApiPathsMapper.cs | 21 +++++++------ .../Settings/WireMockOpenApiParserSettings.cs | 30 +++++++++++-------- 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs b/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs index e4f9d361..8b1e73b6 100644 --- a/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs +++ b/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -111,12 +111,15 @@ namespace WireMock.Net.OpenApiParser.Mappers return null; } - var requestBodyModel = new BodyModel(); - requestBodyModel.Matcher = new MatcherModel(); - requestBodyModel.Matcher.Name = "JsonMatcher"; - requestBodyModel.Matcher.Pattern = JsonConvert.SerializeObject(requestBody, Formatting.Indented); - requestBodyModel.Matcher.IgnoreCase = _settings.IgnoreCaseRequestBody; - return requestBodyModel; + return new BodyModel + { + Matcher = new MatcherModel + { + Name = "JsonMatcher", + Pattern = JsonConvert.SerializeObject(requestBody, Formatting.Indented), + IgnoreCase = _settings.RequestBodyIgnoreCase + } + }; } private bool TryGetContent(IDictionary contents, out OpenApiMediaType openApiMediaType, out string contentType) @@ -328,7 +331,7 @@ namespace WireMock.Net.OpenApiParser.Mappers .Select(qp => new ParamModel { Name = qp.Name, - IgnoreCase = _settings.IgnoreCaseQueryParams, + IgnoreCase = _settings.QueryParameterPatternIgnoreCase, Matchers = new[] { GetExampleMatcherModel(qp.Schema, _settings.QueryParameterPatternToUse) @@ -346,7 +349,7 @@ namespace WireMock.Net.OpenApiParser.Mappers .Select(qp => new HeaderModel { Name = qp.Name, - IgnoreCase = _settings.IgnoreCaseHeaders, + IgnoreCase = _settings.HeaderPatternIgnoreCase, Matchers = new[] { GetExampleMatcherModel(qp.Schema, _settings.HeaderPatternToUse) diff --git a/src/WireMock.Net.OpenApiParser/Settings/WireMockOpenApiParserSettings.cs b/src/WireMock.Net.OpenApiParser/Settings/WireMockOpenApiParserSettings.cs index 75cc99e7..1839f6c9 100644 --- a/src/WireMock.Net.OpenApiParser/Settings/WireMockOpenApiParserSettings.cs +++ b/src/WireMock.Net.OpenApiParser/Settings/WireMockOpenApiParserSettings.cs @@ -28,33 +28,37 @@ namespace WireMock.Net.OpenApiParser.Settings public ExampleValueType QueryParameterPatternToUse { get; set; } = ExampleValueType.Value; /// - /// The example values to use + /// The example values to use. + /// + /// Default implementations are: + /// - + /// - /// public IWireMockOpenApiParserExampleValues ExampleValues { get; set; } /// - /// Are examples generated dynamically? + /// Is a Header match case insensitive? (default is true). /// - public bool DynamicExamples { get; set; } = false; + public bool HeaderPatternIgnoreCase { get; set; } = true; /// - /// Is headers case sensitive? (default is true). + /// Is a Query Parameter match case insensitive? (default is true). /// - public bool IgnoreCaseHeaders { get; set; } = true; + public bool QueryParameterPatternIgnoreCase { get; set; } = true; /// - /// Is query params case sensitive? (default is true). + /// Is a Request Body match case insensitive? (default is true). /// - public bool IgnoreCaseQueryParams { get; set; } = true; + public bool RequestBodyIgnoreCase { get; set; } = true; /// - /// Is request body case sensitive? (default is true). - /// - public bool IgnoreCaseRequestBody { get; set; } = true; - - /// - /// Are example values case sensitive? (default is true). + /// Is a ExampleValue match case insensitive? (default is true). /// public bool IgnoreCaseExampleValues { get; set; } = true; + + /// + /// Are examples generated dynamically? (default is false). + /// + public bool DynamicExamples { get; set; } = false; } } \ No newline at end of file