From 9a532108b8bd9909645d865c67cd87037f59da33 Mon Sep 17 00:00:00 2001 From: Stef Heyenrath Date: Mon, 27 Jul 2020 17:24:24 +0200 Subject: [PATCH] Mark BlacklistedHeaders and BlacklistedCookies as obsolete (#492) * #489 * . * FluentMockServerSettings --- src/WireMock.Net.StandAlone/StandAloneApp.cs | 4 ++-- src/WireMock.Net/Server/FluentMockServer.cs | 4 +++- .../Server/WireMockServer.Admin.cs | 8 +++---- .../Settings/FluentMockServerSettings.cs | 5 ++++- .../Settings/IFluentMockServerSettings.cs | 5 ++++- .../Settings/IProxyAndRecordSettings.cs | 5 ++++- .../Settings/ProxyAndRecordSettings.cs | 13 +++++------ .../ResponseWithStatusCodeTests.cs | 2 +- .../WireMockServer.Proxy.cs | 22 +++++++++---------- 9 files changed, 39 insertions(+), 29 deletions(-) diff --git a/src/WireMock.Net.StandAlone/StandAloneApp.cs b/src/WireMock.Net.StandAlone/StandAloneApp.cs index 2000c5b5..12f2a91a 100644 --- a/src/WireMock.Net.StandAlone/StandAloneApp.cs +++ b/src/WireMock.Net.StandAlone/StandAloneApp.cs @@ -13,9 +13,9 @@ namespace WireMock.Net.StandAlone public static class StandAloneApp { /// - /// Start WireMock.Net standalone Server based on the FluentMockServerSettings. + /// Start WireMock.Net standalone Server based on the IWireMockServerSettings. /// - /// The FluentMockServerSettings + /// The IWireMockServerSettings [PublicAPI] public static WireMockServer Start([NotNull] IWireMockServerSettings settings) { diff --git a/src/WireMock.Net/Server/FluentMockServer.cs b/src/WireMock.Net/Server/FluentMockServer.cs index acb35e94..2e2def00 100644 --- a/src/WireMock.Net/Server/FluentMockServer.cs +++ b/src/WireMock.Net/Server/FluentMockServer.cs @@ -1,7 +1,9 @@ -using WireMock.Settings; +using System; +using WireMock.Settings; namespace WireMock.Server { + [Obsolete("Use WireMockServer. This will removed in next version (1.3.x)")] public class FluentMockServer : WireMockServer { public FluentMockServer(IFluentMockServerSettings settings) : base((IWireMockServerSettings) settings) diff --git a/src/WireMock.Net/Server/WireMockServer.Admin.cs b/src/WireMock.Net/Server/WireMockServer.Admin.cs index 8665401d..d673f02d 100644 --- a/src/WireMock.Net/Server/WireMockServer.Admin.cs +++ b/src/WireMock.Net/Server/WireMockServer.Admin.cs @@ -290,7 +290,7 @@ namespace WireMock.Server return responseMessage; } - private IMapping ToMapping(RequestMessage requestMessage, ResponseMessage responseMessage, string[] blacklistedHeaders, string[] blacklistedCookies) + private IMapping ToMapping(RequestMessage requestMessage, ResponseMessage responseMessage, string[] excludedHeaders, string[] excludedCookies) { var request = Request.Create(); request.WithPath(requestMessage.Path); @@ -299,16 +299,16 @@ namespace WireMock.Server requestMessage.Query.Loop((key, value) => request.WithParam(key, false, value.ToArray())); requestMessage.Cookies.Loop((key, value) => { - if (!blacklistedCookies.Contains(key, StringComparer.OrdinalIgnoreCase)) + if (!excludedCookies.Contains(key, StringComparer.OrdinalIgnoreCase)) { request.WithCookie(key, value); } }); - var allBlackListedHeaders = new List(blacklistedHeaders) { "Cookie" }; + var allExcludedHeaders = new List(excludedHeaders) { "Cookie" }; requestMessage.Headers.Loop((key, value) => { - if (!allBlackListedHeaders.Contains(key, StringComparer.OrdinalIgnoreCase)) + if (!allExcludedHeaders.Contains(key, StringComparer.OrdinalIgnoreCase)) { request.WithHeader(key, value.ToArray()); } diff --git a/src/WireMock.Net/Settings/FluentMockServerSettings.cs b/src/WireMock.Net/Settings/FluentMockServerSettings.cs index d21b366e..585eea8a 100644 --- a/src/WireMock.Net/Settings/FluentMockServerSettings.cs +++ b/src/WireMock.Net/Settings/FluentMockServerSettings.cs @@ -1,8 +1,11 @@ -namespace WireMock.Settings +using System; + +namespace WireMock.Settings { /// /// FluentMockServerSettings /// + [Obsolete("Use WireMockServerSettings. This will removed in next version (1.3.x)")] public class FluentMockServerSettings : WireMockServerSettings { } diff --git a/src/WireMock.Net/Settings/IFluentMockServerSettings.cs b/src/WireMock.Net/Settings/IFluentMockServerSettings.cs index 1d255a47..d7906dd4 100644 --- a/src/WireMock.Net/Settings/IFluentMockServerSettings.cs +++ b/src/WireMock.Net/Settings/IFluentMockServerSettings.cs @@ -1,8 +1,11 @@ -namespace WireMock.Settings +using System; + +namespace WireMock.Settings { /// /// IFluentMockServerSettings /// + [Obsolete("Use IWireMockServerSettings. This will removed in next version (1.3.x)")] public interface IFluentMockServerSettings : IWireMockServerSettings { } diff --git a/src/WireMock.Net/Settings/IProxyAndRecordSettings.cs b/src/WireMock.Net/Settings/IProxyAndRecordSettings.cs index 26b93b5d..80f321fd 100644 --- a/src/WireMock.Net/Settings/IProxyAndRecordSettings.cs +++ b/src/WireMock.Net/Settings/IProxyAndRecordSettings.cs @@ -1,4 +1,5 @@ -using JetBrains.Annotations; +using System; +using JetBrains.Annotations; namespace WireMock.Settings { @@ -38,11 +39,13 @@ namespace WireMock.Settings /// /// Defines a list from headers which will excluded from the saved mappings. /// + [Obsolete("Will be renamed to ExcludedHeaders in next version (1.3.x)")] string[] BlackListedHeaders { get; set; } /// /// Defines a list of cookies which will excluded from the saved mappings. /// + [Obsolete("Will be renamed to ExcludedCookies in next version (1.3.x)")] string[] BlackListedCookies { get; set; } /// diff --git a/src/WireMock.Net/Settings/ProxyAndRecordSettings.cs b/src/WireMock.Net/Settings/ProxyAndRecordSettings.cs index f802ad44..0e726a12 100644 --- a/src/WireMock.Net/Settings/ProxyAndRecordSettings.cs +++ b/src/WireMock.Net/Settings/ProxyAndRecordSettings.cs @@ -1,4 +1,5 @@ -using JetBrains.Annotations; +using System; +using JetBrains.Annotations; namespace WireMock.Settings { @@ -39,16 +40,14 @@ namespace WireMock.Settings [PublicAPI] public string ClientX509Certificate2ThumbprintOrSubjectName { get; set; } - /// - /// Defines a list from headers which will excluded from the saved mappings. - /// + /// [PublicAPI] + [Obsolete("Will be renamed to ExcludedHeaders in next version (1.3.x)")] public string[] BlackListedHeaders { get; set; } - /// - /// Defines a list of cookies which will excluded from the saved mappings. - /// + /// [PublicAPI] + [Obsolete("Will be renamed to ExcludedCookies in next version (1.3.x)")] public string[] BlackListedCookies { get; set; } /// diff --git a/test/WireMock.Net.Tests/ResponseBuilders/ResponseWithStatusCodeTests.cs b/test/WireMock.Net.Tests/ResponseBuilders/ResponseWithStatusCodeTests.cs index de05a8a7..8535ba7c 100644 --- a/test/WireMock.Net.Tests/ResponseBuilders/ResponseWithStatusCodeTests.cs +++ b/test/WireMock.Net.Tests/ResponseBuilders/ResponseWithStatusCodeTests.cs @@ -11,7 +11,7 @@ namespace WireMock.Net.Tests.ResponseBuilders { public class ResponseWithStatusCodeTests { - private readonly Mock _settingsMock = new Mock(); + private readonly Mock _settingsMock = new Mock(); private const string ClientIp = "::1"; [Theory] diff --git a/test/WireMock.Net.Tests/WireMockServer.Proxy.cs b/test/WireMock.Net.Tests/WireMockServer.Proxy.cs index 1215ec02..2803210e 100644 --- a/test/WireMock.Net.Tests/WireMockServer.Proxy.cs +++ b/test/WireMock.Net.Tests/WireMockServer.Proxy.cs @@ -33,9 +33,9 @@ namespace WireMock.Net.Tests SaveMappingToFile = false } }; - var server = WireMockServer.Start(settings); - - // Act + var server = WireMockServer.Start(settings); + + // Act var requestMessage = new HttpRequestMessage { Method = HttpMethod.Get, @@ -47,8 +47,8 @@ namespace WireMock.Net.Tests // Assert Check.That(server.Mappings).HasSize(2); Check.That(server.LogEntries).HasSize(1); - } - + } + [Fact] public async Task WireMockServer_Proxy_Should_proxy_responses() { @@ -123,7 +123,7 @@ namespace WireMock.Net.Tests } [Fact] - public async Task WireMockServer_Proxy_Should_exclude_blacklisted_content_header_in_mapping() + public async Task WireMockServer_Proxy_Should_exclude_ExcludedHeaders_in_mapping() { // Assign string path = $"/prx_{Guid.NewGuid()}"; @@ -139,7 +139,7 @@ namespace WireMock.Net.Tests Url = serverForProxyForwarding.Urls[0], SaveMapping = true, SaveMappingToFile = false, - BlackListedHeaders = new[] { "blacklisted" } + BlackListedHeaders = new[] { "excluded-header-X" } } }; var server = WireMockServer.Start(settings); @@ -152,7 +152,7 @@ namespace WireMock.Net.Tests RequestUri = new Uri($"{server.Urls[0]}{path}"), Content = new StringContent("stringContent") }; - requestMessage.Headers.Add("blacklisted", "exact_match"); + requestMessage.Headers.Add("foobar", "exact_match"); requestMessage.Headers.Add("ok", "ok-value"); await new HttpClient().SendAsync(requestMessage); @@ -160,12 +160,12 @@ namespace WireMock.Net.Tests var mapping = server.Mappings.FirstOrDefault(m => m.Guid != defaultMapping.Guid); Check.That(mapping).IsNotNull(); var matchers = ((Request)mapping.RequestMatcher).GetRequestMessageMatchers().Select(m => m.Name).ToList(); - Check.That(matchers).Not.Contains("blacklisted"); + Check.That(matchers).Not.Contains("excluded-header-X"); Check.That(matchers).Contains("ok"); } [Fact] - public async Task WireMockServer_Proxy_Should_exclude_blacklisted_cookies_in_mapping() + public async Task WireMockServer_Proxy_Should_exclude_ExcludedCookies_in_mapping() { // Assign string path = $"/prx_{Guid.NewGuid()}"; @@ -515,7 +515,7 @@ namespace WireMock.Net.Tests content.Should().Contain("known"); // On Linux it's "Name or service not known". On Windows it's "No such host is known.". server.LogEntries.Should().HaveCount(1); - ((StatusModel) server.LogEntries.First().ResponseMessage.BodyData.BodyAsJson).Status.Should().Contain("known"); + ((StatusModel)server.LogEntries.First().ResponseMessage.BodyData.BodyAsJson).Status.Should().Contain("known"); } } } \ No newline at end of file