diff --git a/src/WireMock.Net.Abstractions/Admin/Mappings/MappingModel.cs b/src/WireMock.Net.Abstractions/Admin/Mappings/MappingModel.cs
index 49ab60c6..58ee7343 100644
--- a/src/WireMock.Net.Abstractions/Admin/Mappings/MappingModel.cs
+++ b/src/WireMock.Net.Abstractions/Admin/Mappings/MappingModel.cs
@@ -1,4 +1,5 @@
-using System;
+using System;
+using WireMock.Models;
namespace WireMock.Admin.Mappings
{
@@ -13,6 +14,11 @@ namespace WireMock.Admin.Mappings
///
public Guid? Guid { get; set; }
+ ///
+ /// Gets or sets the TimeSettings when which this mapping should be used.
+ ///
+ public TimeSettingsModel TimeSettings { get; set; }
+
///
/// The unique title.
///
diff --git a/src/WireMock.Net.Abstractions/Admin/Mappings/TimeSettingsModel.cs b/src/WireMock.Net.Abstractions/Admin/Mappings/TimeSettingsModel.cs
new file mode 100644
index 00000000..bd63b74e
--- /dev/null
+++ b/src/WireMock.Net.Abstractions/Admin/Mappings/TimeSettingsModel.cs
@@ -0,0 +1,26 @@
+using System;
+
+namespace WireMock.Models
+{
+ ///
+ /// TimeSettingsModel: Start, End and TTL
+ ///
+ [FluentBuilder.AutoGenerateBuilder]
+ public class TimeSettingsModel
+ {
+ ///
+ /// Gets or sets the DateTime from which this mapping should be used. In case this is not defined, it's used (default behavior).
+ ///
+ public DateTime? Start { get; set; }
+
+ ///
+ /// Gets or sets the DateTime from until this mapping should be used. In case this is not defined, it's used forever (default behavior).
+ ///
+ public DateTime? End { get; set; }
+
+ ///
+ /// Gets or sets the TTL (Time To Live) in seconds for this mapping. In case this is not defined, it's used (default behavior).
+ ///
+ public int? TTL { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/WireMock.Net.Abstractions/Models/ITimeSettings.cs b/src/WireMock.Net.Abstractions/Models/ITimeSettings.cs
new file mode 100644
index 00000000..f9c8dc12
--- /dev/null
+++ b/src/WireMock.Net.Abstractions/Models/ITimeSettings.cs
@@ -0,0 +1,25 @@
+using System;
+
+namespace WireMock.Models
+{
+ ///
+ /// TimeSettings: Start, End and TTL
+ ///
+ public interface ITimeSettings
+ {
+ ///
+ /// Gets or sets the DateTime from which this mapping should be used. In case this is not defined, it's used (default behavior).
+ ///
+ DateTime? Start { get; set; }
+
+ ///
+ /// Gets or sets the DateTime from until this mapping should be used. In case this is not defined, it's used forever (default behavior).
+ ///
+ DateTime? End { get; set; }
+
+ ///
+ /// Gets or sets the TTL (Time To Live) in seconds for this mapping. In case this is not defined, it's used (default behavior).
+ ///
+ int? TTL { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/WireMock.Net/Extensions/AnyOfExtensions.cs b/src/WireMock.Net/Extensions/AnyOfExtensions.cs
index 015690e2..fe4c4dff 100644
--- a/src/WireMock.Net/Extensions/AnyOfExtensions.cs
+++ b/src/WireMock.Net/Extensions/AnyOfExtensions.cs
@@ -1,23 +1,24 @@
using System.Collections.Generic;
using System.Linq;
using AnyOfTypes;
+using JetBrains.Annotations;
using WireMock.Models;
namespace WireMock.Extensions
{
internal static class AnyOfExtensions
{
- public static string GetPattern(this AnyOf value)
+ public static string GetPattern([NotNull] this AnyOf value)
{
return value.IsFirst ? value.First : value.Second.Pattern;
}
- public static AnyOf[] ToAnyOfPatterns(this IEnumerable patterns)
+ public static AnyOf[] ToAnyOfPatterns([NotNull] this IEnumerable patterns)
{
return patterns.Select(p => p.ToAnyOfPattern()).ToArray();
}
- public static AnyOf ToAnyOfPattern(this string pattern)
+ public static AnyOf ToAnyOfPattern([CanBeNull] this string pattern)
{
return new AnyOf(pattern);
}
diff --git a/src/WireMock.Net/Extensions/TimeSettingsExtensions.cs b/src/WireMock.Net/Extensions/TimeSettingsExtensions.cs
new file mode 100644
index 00000000..138ffe1d
--- /dev/null
+++ b/src/WireMock.Net/Extensions/TimeSettingsExtensions.cs
@@ -0,0 +1,35 @@
+using System;
+using JetBrains.Annotations;
+using WireMock.Models;
+
+namespace WireMock.Extensions
+{
+ internal static class TimeSettingsExtensions
+ {
+ public static bool IsValid([CanBeNull] this ITimeSettings settings)
+ {
+ if (settings == null)
+ {
+ return true;
+ }
+
+ var now = DateTime.Now;
+ var start = settings.Start != null ? settings.Start.Value : now;
+ DateTime end;
+ if (settings.End != null)
+ {
+ end = settings.End.Value;
+ }
+ else if (settings.TTL != null)
+ {
+ end = start.AddSeconds(settings.TTL.Value);
+ }
+ else
+ {
+ end = DateTime.MaxValue;
+ }
+
+ return now >= start && now <= end;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/WireMock.Net/IMapping.cs b/src/WireMock.Net/IMapping.cs
index 9d17844b..510c3111 100644
--- a/src/WireMock.Net/IMapping.cs
+++ b/src/WireMock.Net/IMapping.cs
@@ -1,4 +1,4 @@
-using JetBrains.Annotations;
+using JetBrains.Annotations;
using System;
using System.Threading.Tasks;
using WireMock.Matchers.Request;
@@ -18,6 +18,11 @@ namespace WireMock
///
Guid Guid { get; }
+ ///
+ /// Gets the TimeSettings (Start, End and TTL).
+ ///
+ ITimeSettings TimeSettings { get; }
+
///
/// Gets the unique title.
///
diff --git a/src/WireMock.Net/Mapping.cs b/src/WireMock.Net/Mapping.cs
index d9e15942..42c87a9e 100644
--- a/src/WireMock.Net/Mapping.cs
+++ b/src/WireMock.Net/Mapping.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Threading.Tasks;
using JetBrains.Annotations;
using WireMock.Matchers.Request;
@@ -13,51 +13,54 @@ namespace WireMock
///
public class Mapping : IMapping
{
- ///
+ ///
public Guid Guid { get; }
- ///
+ ///
public string Title { get; }
- ///
+ ///
public string Path { get; set; }
- ///
+ ///
public int Priority { get; }
- ///
+ ///
public string Scenario { get; }
- ///
+ ///
public string ExecutionConditionState { get; }
- ///
+ ///
public string NextState { get; }
- ///
+ ///
public int? StateTimes { get; }
- ///
+ ///
public IRequestMatcher RequestMatcher { get; }
- ///
+ ///
public IResponseProvider Provider { get; }
- ///
+ ///
public IWireMockServerSettings Settings { get; }
- ///
+ ///
public bool IsStartState => Scenario == null || Scenario != null && NextState != null && ExecutionConditionState == null;
- ///
+ ///
public bool IsAdminInterface => Provider is DynamicResponseProvider || Provider is DynamicAsyncResponseProvider || Provider is ProxyAsyncResponseProvider;
- ///
+ ///
public bool LogMapping => !(Provider is DynamicResponseProvider || Provider is DynamicAsyncResponseProvider);
- ///
+ ///
public IWebhook[] Webhooks { get; }
+ ///
+ public ITimeSettings TimeSettings { get; }
+
///
/// Initializes a new instance of the class.
///
@@ -73,6 +76,7 @@ namespace WireMock
/// The next state which will occur after the current mapping execution. [Optional]
/// Only when the current state is executed this number, the next state which will occur. [Optional]
/// The Webhooks. [Optional]
+ /// The TimeSettings. [Optional]
public Mapping(
Guid guid,
[CanBeNull] string title,
@@ -85,7 +89,8 @@ namespace WireMock
[CanBeNull] string executionConditionState,
[CanBeNull] string nextState,
[CanBeNull] int? stateTimes,
- [CanBeNull] IWebhook[] webhooks)
+ [CanBeNull] IWebhook[] webhooks,
+ [CanBeNull] ITimeSettings timeSettings)
{
Guid = guid;
Title = title;
@@ -99,6 +104,7 @@ namespace WireMock
NextState = nextState;
StateTimes = stateTimes;
Webhooks = webhooks;
+ TimeSettings = timeSettings;
}
///
diff --git a/src/WireMock.Net/Models/TimeSettings.cs b/src/WireMock.Net/Models/TimeSettings.cs
new file mode 100644
index 00000000..23f13666
--- /dev/null
+++ b/src/WireMock.Net/Models/TimeSettings.cs
@@ -0,0 +1,19 @@
+using System;
+
+namespace WireMock.Models
+{
+ ///
+ /// TimeSettingsModel: Start, End and TTL
+ ///
+ public class TimeSettings : ITimeSettings
+ {
+ ///
+ public DateTime? Start { get; set; }
+
+ ///
+ public DateTime? End { get; set; }
+
+ ///
+ public int? TTL { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/WireMock.Net/Owin/MappingMatcher.cs b/src/WireMock.Net/Owin/MappingMatcher.cs
index 71b4d814..ae156966 100644
--- a/src/WireMock.Net/Owin/MappingMatcher.cs
+++ b/src/WireMock.Net/Owin/MappingMatcher.cs
@@ -1,6 +1,7 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
+using WireMock.Extensions;
using WireMock.Validation;
namespace WireMock.Owin
@@ -19,7 +20,8 @@ namespace WireMock.Owin
public (MappingMatcherResult Match, MappingMatcherResult Partial) FindBestMatch(RequestMessage request)
{
var mappings = new List();
- foreach (var mapping in _options.Mappings.Values)
+
+ foreach (var mapping in _options.Mappings.Values.Where(m => m.TimeSettings.IsValid()))
{
try
{
diff --git a/src/WireMock.Net/Proxy/ProxyHelper.cs b/src/WireMock.Net/Proxy/ProxyHelper.cs
index d778a355..fc4b3033 100644
--- a/src/WireMock.Net/Proxy/ProxyHelper.cs
+++ b/src/WireMock.Net/Proxy/ProxyHelper.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
@@ -21,8 +21,7 @@ namespace WireMock.Proxy
public ProxyHelper([NotNull] IWireMockServerSettings settings)
{
- Check.NotNull(settings, nameof(settings));
- _settings = settings;
+ _settings = Check.NotNull(settings, nameof(settings));
}
public async Task<(ResponseMessage Message, IMapping Mapping)> SendAsync(
@@ -105,7 +104,7 @@ namespace WireMock.Proxy
var response = Response.Create(responseMessage);
- return new Mapping(Guid.NewGuid(), string.Empty, null, _settings, request, response, 0, null, null, null, null, null);
+ return new Mapping(Guid.NewGuid(), string.Empty, null, _settings, request, response, 0, null, null, null, null, null, null);
}
}
}
\ No newline at end of file
diff --git a/src/WireMock.Net/Serialization/MappingConverter.cs b/src/WireMock.Net/Serialization/MappingConverter.cs
index d74fe17d..2fe82695 100644
--- a/src/WireMock.Net/Serialization/MappingConverter.cs
+++ b/src/WireMock.Net/Serialization/MappingConverter.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using WireMock.Admin.Mappings;
using WireMock.Matchers.Request;
+using WireMock.Models;
using WireMock.RequestBuilders;
using WireMock.ResponseBuilders;
using WireMock.Settings;
@@ -36,6 +37,7 @@ namespace WireMock.Serialization
var mappingModel = new MappingModel
{
Guid = mapping.Guid,
+ TimeSettings = TimeSettingsMapper.Map(mapping.TimeSettings),
Title = mapping.Title,
Priority = mapping.Priority != 0 ? mapping.Priority : (int?)null,
Scenario = mapping.Scenario,
diff --git a/src/WireMock.Net/Serialization/TimeSettingsMapper.cs b/src/WireMock.Net/Serialization/TimeSettingsMapper.cs
new file mode 100644
index 00000000..6528a78b
--- /dev/null
+++ b/src/WireMock.Net/Serialization/TimeSettingsMapper.cs
@@ -0,0 +1,27 @@
+using WireMock.Models;
+
+namespace WireMock.Serialization
+{
+ internal static class TimeSettingsMapper
+ {
+ public static TimeSettingsModel Map(ITimeSettings settings)
+ {
+ return settings != null ? new TimeSettingsModel
+ {
+ Start = settings.Start,
+ End = settings.End,
+ TTL = settings.TTL
+ } : null;
+ }
+
+ public static ITimeSettings Map(TimeSettingsModel settings)
+ {
+ return settings != null ? new TimeSettings
+ {
+ Start = settings.Start,
+ End = settings.End,
+ TTL = settings.TTL
+ } : null;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/WireMock.Net/Server/IRespondWithAProvider.cs b/src/WireMock.Net/Server/IRespondWithAProvider.cs
index f58d063f..a75068e3 100644
--- a/src/WireMock.Net/Server/IRespondWithAProvider.cs
+++ b/src/WireMock.Net/Server/IRespondWithAProvider.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using JetBrains.Annotations;
using WireMock.Models;
@@ -24,6 +24,13 @@ namespace WireMock.Server
/// The .
IRespondWithAProvider WithGuid(Guid guid);
+ ///
+ /// Define the TimeSettings for this mapping.
+ ///
+ /// The TimeSettings.
+ /// The .
+ IRespondWithAProvider WithTimeSettings(ITimeSettings timeSettings);
+
///
/// Define a unique title for this mapping.
///
diff --git a/src/WireMock.Net/Server/RespondWithAProvider.cs b/src/WireMock.Net/Server/RespondWithAProvider.cs
index ca39634c..80ba6626 100644
--- a/src/WireMock.Net/Server/RespondWithAProvider.cs
+++ b/src/WireMock.Net/Server/RespondWithAProvider.cs
@@ -1,4 +1,4 @@
-// This source file is based on mock4net by Alexandre Victoor which is licensed under the Apache 2.0 License.
+// This source file is based on mock4net by Alexandre Victoor which is licensed under the Apache 2.0 License.
// For more details see 'mock4net/LICENSE.txt' and 'mock4net/readme.md' in this project root.
using System;
using System.Collections.Generic;
@@ -34,6 +34,8 @@ namespace WireMock.Server
public IWebhook[] Webhooks { get; private set; }
+ public ITimeSettings TimeSettings { get; private set; }
+
///
/// Initializes a new instance of the class.
///
@@ -55,7 +57,7 @@ namespace WireMock.Server
/// The provider.
public void RespondWith(IResponseProvider provider)
{
- _registrationCallback(new Mapping(Guid, _title, _path, _settings, _requestMatcher, provider, _priority, _scenario, _executionConditionState, _nextState, _timesInSameState, Webhooks), _saveToFile);
+ _registrationCallback(new Mapping(Guid, _title, _path, _settings, _requestMatcher, provider, _priority, _scenario, _executionConditionState, _nextState, _timesInSameState, Webhooks, TimeSettings), _saveToFile);
}
///
@@ -149,6 +151,16 @@ namespace WireMock.Server
return WillSetStateTo(state.ToString(), times);
}
+ ///
+ public IRespondWithAProvider WithTimeSettings(ITimeSettings timeSettings)
+ {
+ Check.NotNull(timeSettings, nameof(timeSettings));
+
+ TimeSettings = timeSettings;
+
+ return this;
+ }
+
///
public IRespondWithAProvider WithWebhook(params IWebhook[] webhooks)
{
@@ -207,7 +219,7 @@ namespace WireMock.Server
return this;
}
- private IWebhook InitWebhook(
+ private static IWebhook InitWebhook(
string url,
string method,
IDictionary> headers,
diff --git a/src/WireMock.Net/Server/WireMockServer.Admin.cs b/src/WireMock.Net/Server/WireMockServer.Admin.cs
index 0c6034ec..ed306bb7 100644
--- a/src/WireMock.Net/Server/WireMockServer.Admin.cs
+++ b/src/WireMock.Net/Server/WireMockServer.Admin.cs
@@ -450,6 +450,11 @@ namespace WireMock.Server
respondProvider = respondProvider.WithGuid(mappingModel.Guid.Value);
}
+ if (mappingModel.TimeSettings != null)
+ {
+ respondProvider = respondProvider.WithTimeSettings(TimeSettingsMapper.Map(mappingModel.TimeSettings));
+ }
+
if (path != null)
{
respondProvider = respondProvider.WithPath(path);
diff --git a/src/WireMock.Net/Server/WireMockServer.cs b/src/WireMock.Net/Server/WireMockServer.cs
index 6a721537..5146f3e1 100644
--- a/src/WireMock.Net/Server/WireMockServer.cs
+++ b/src/WireMock.Net/Server/WireMockServer.cs
@@ -4,7 +4,6 @@ using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
-using System.Text;
using System.Threading;
using JetBrains.Annotations;
using Newtonsoft.Json;
@@ -13,7 +12,6 @@ using WireMock.Authentication;
using WireMock.Exceptions;
using WireMock.Handlers;
using WireMock.Logging;
-using WireMock.Matchers;
using WireMock.Matchers.Request;
using WireMock.Owin;
using WireMock.RequestBuilders;
diff --git a/src/WireMock.Net/WireMock.Net.csproj b/src/WireMock.Net/WireMock.Net.csproj
index 48c02ef2..7dc4a970 100644
--- a/src/WireMock.Net/WireMock.Net.csproj
+++ b/src/WireMock.Net/WireMock.Net.csproj
@@ -60,6 +60,8 @@
+
+
@@ -81,6 +83,7 @@
+
diff --git a/test/WireMock.Net.Tests/Owin/WireMockMiddlewareTests.cs b/test/WireMock.Net.Tests/Owin/WireMockMiddlewareTests.cs
index 353b890e..93d1d766 100644
--- a/test/WireMock.Net.Tests/Owin/WireMockMiddlewareTests.cs
+++ b/test/WireMock.Net.Tests/Owin/WireMockMiddlewareTests.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Linq.Expressions;
using System.Threading.Tasks;
@@ -176,7 +176,7 @@ namespace WireMock.Net.Tests.Owin
_mappingMock.SetupGet(m => m.Provider).Returns(responseBuilder);
_mappingMock.SetupGet(m => m.Settings).Returns(settings);
- var newMappingFromProxy = new Mapping(Guid.NewGuid(), "", null, settings, Request.Create(), Response.Create(), 0, null, null, null, null, null);
+ var newMappingFromProxy = new Mapping(Guid.NewGuid(), "", null, settings, Request.Create(), Response.Create(), 0, null, null, null, null, null, null);
_mappingMock.Setup(m => m.ProvideResponseAsync(It.IsAny())).ReturnsAsync((new ResponseMessage(), newMappingFromProxy));
var requestBuilder = Request.Create().UsingAnyMethod();
@@ -230,7 +230,7 @@ namespace WireMock.Net.Tests.Owin
_mappingMock.SetupGet(m => m.Provider).Returns(responseBuilder);
_mappingMock.SetupGet(m => m.Settings).Returns(settings);
- var newMappingFromProxy = new Mapping(Guid.NewGuid(), "", null, settings, Request.Create(), Response.Create(), 0, null, null, null, null, null);
+ var newMappingFromProxy = new Mapping(Guid.NewGuid(), "", null, settings, Request.Create(), Response.Create(), 0, null, null, null, null, null, null);
_mappingMock.Setup(m => m.ProvideResponseAsync(It.IsAny())).ReturnsAsync((new ResponseMessage(), newMappingFromProxy));
var requestBuilder = Request.Create().UsingAnyMethod();
diff --git a/test/WireMock.Net.Tests/Serialization/MappingConverterTests.cs b/test/WireMock.Net.Tests/Serialization/MappingConverterTests.cs
index c820a41a..2ecd797e 100644
--- a/test/WireMock.Net.Tests/Serialization/MappingConverterTests.cs
+++ b/test/WireMock.Net.Tests/Serialization/MappingConverterTests.cs
@@ -51,7 +51,7 @@ namespace WireMock.Net.Tests.Serialization
}
}
};
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 0, null, null, null, null, webhooks);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 0, null, null, null, null, webhooks, null);
// Act
var model = _sut.ToMappingModel(mapping);
@@ -120,8 +120,7 @@ namespace WireMock.Net.Tests.Serialization
}
}
};
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 0, null, null, null, null, webhooks
-);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 0, null, null, null, null, webhooks, null);
// Act
var model = _sut.ToMappingModel(mapping);
@@ -153,7 +152,7 @@ namespace WireMock.Net.Tests.Serialization
// Assign
var request = Request.Create();
var response = Response.Create().WithBodyAsJson(new { x = "x" }).WithTransformer();
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null, null);
// Act
var model = _sut.ToMappingModel(mapping);
@@ -164,6 +163,34 @@ namespace WireMock.Net.Tests.Serialization
model.Response.UseTransformer.Should().BeTrue();
}
+ [Fact]
+ public void ToMappingModel_WithTimeSetrtings_ReturnsCorrectTimeSettings()
+ {
+ // Assign
+ var start = DateTime.Now;
+ var ttl = 100;
+ var end = start.AddSeconds(ttl);
+ var request = Request.Create();
+ var response = Response.Create();
+ var timeSettings = new TimeSettings
+ {
+ Start = start,
+ End = end,
+ TTL = ttl
+ };
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null, timeSettings);
+
+ // Act
+ var model = _sut.ToMappingModel(mapping);
+
+ // Assert
+ model.Should().NotBeNull();
+ model.TimeSettings.Should().NotBeNull();
+ model.TimeSettings.Start.Should().Be(start);
+ model.TimeSettings.End.Should().Be(end);
+ model.TimeSettings.TTL.Should().Be(ttl);
+ }
+
[Fact]
public void ToMappingModel_WithDelay_ReturnsCorrectModel()
{
@@ -171,7 +198,7 @@ namespace WireMock.Net.Tests.Serialization
int delay = 1000;
var request = Request.Create();
var response = Response.Create().WithDelay(delay);
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null, null);
// Act
var model = _sut.ToMappingModel(mapping);
@@ -182,13 +209,13 @@ namespace WireMock.Net.Tests.Serialization
}
[Fact]
- public void ToMappingModel_WithRandomMininumDelay_ReturnsCorrectModel()
+ public void ToMappingModel_WithRandomMinimumDelay_ReturnsCorrectModel()
{
// Assign
int minimumDelay = 1000;
var request = Request.Create();
var response = Response.Create().WithRandomDelay(minimumDelay);
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null, null);
// Act
var model = _sut.ToMappingModel(mapping);
@@ -208,7 +235,7 @@ namespace WireMock.Net.Tests.Serialization
int maximumDelay = 2000;
var request = Request.Create();
var response = Response.Create().WithRandomDelay(minimumDelay, maximumDelay);
- var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null);
+ var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 42, null, null, null, null, null, null);
// Act
var model = _sut.ToMappingModel(mapping);
diff --git a/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj b/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj
index 7e8b9ca9..74a7663d 100644
--- a/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj
+++ b/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj
@@ -37,6 +37,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -59,8 +60,9 @@
-
+
+