mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-08-24 12:44:14 +02:00
* Fix #1501: Generate WhenStateIs/WillSetStateTo correctly in ToCSharpCode * Fix matcher to code converters. Refactor changes. * Adjust test artifacts. * Return fully qualified class names for matchers
This commit is contained in:
@@ -70,7 +70,7 @@ public class CSharpCodeMatcher : ICSharpCodeMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(CSharpCodeMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ public class SystemTextJsonPathMatcher : ISystemTextJsonPathMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(SystemTextJsonPathMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -80,10 +80,10 @@ public class ContentTypeMatcher : WildcardMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(ContentTypeMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MappingConverterUtils.ToCSharpCodeArguments(_patterns)}, " +
|
$"new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] {{ {MappingConverterUtils.ToCSharpCodeArguments(_patterns)} }}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}" +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}" +
|
||||||
$")";
|
$")";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ public class ExactMatcher : IStringMatcher, IIgnoreCaseMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(ExactMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
||||||
|
|||||||
@@ -167,10 +167,10 @@ public class FormUrlEncodedMatcher : IStringMatcher, IIgnoreCaseMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(FormUrlEncodedMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MappingConverterUtils.ToCSharpCodeArguments(_patterns)}, " +
|
$"new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] {{ {MappingConverterUtils.ToCSharpCodeArguments(_patterns)} }}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
||||||
$")";
|
$")";
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ public class FuncMatcher : IFuncMatcher
|
|||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
var funcType = _stringFunc != null ? "Func<string?, bool>" : "Func<byte[]?, bool>";
|
var funcType = _stringFunc != null ? "Func<string?, bool>" : "Func<byte[]?, bool>";
|
||||||
return $"new {Name}" +
|
return $"new {typeof(FuncMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"/* {funcType} function */, " +
|
$"/* {funcType} function */, " +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}" +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}" +
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ public class JsonPathMatcher : IJsonPathMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(JsonPathMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ public class JmesPathMatcher : IStringMatcher, IObjectMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(JmesPathMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ public class JsonMatcher : IJsonMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public virtual string GetCSharpCodeArguments()
|
public virtual string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(JsonMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class JsonPartialMatcher : AbstractJsonPartialMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(JsonPartialMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class JsonPartialWildcardMatcher : AbstractJsonPartialMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(JsonPartialWildcardMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ public class LinqMatcher : IObjectMatcher, IStringMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(LinqMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
// Copyright © WireMock.Net
|
// Copyright © WireMock.Net
|
||||||
|
|
||||||
using System.Linq;
|
|
||||||
using AnyOfTypes;
|
using AnyOfTypes;
|
||||||
using SimMetrics.Net;
|
using SimMetrics.Net;
|
||||||
using SimMetrics.Net.API;
|
using SimMetrics.Net.API;
|
||||||
@@ -92,10 +91,10 @@ public class SimMetricsMatcher : IStringMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public virtual string GetCSharpCodeArguments()
|
public virtual string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(SimMetricsMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MappingConverterUtils.ToCSharpCodeArguments(_patterns)}, " +
|
$"new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] {{ {MappingConverterUtils.ToCSharpCodeArguments(_patterns)} }}, " +
|
||||||
$"{_simMetricType.GetFullyQualifiedEnumValue()}, " +
|
$"{_simMetricType.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
||||||
$")";
|
$")";
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ public class SystemTextJsonMatcher : IJsonMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public virtual string GetCSharpCodeArguments()
|
public virtual string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(SystemTextJsonMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class SystemTextJsonPartialMatcher : AbstractSystemTextJsonPartialMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(SystemTextJsonPartialMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ public class SystemTextJsonPartialWildcardMatcher : AbstractSystemTextJsonPartia
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(SystemTextJsonPartialWildcardMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
$"{CSharpFormatter.ConvertToAnonymousObjectDefinition(Value, 3)}, " +
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ public class XPathMatcher : IStringMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(XPathMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}, " +
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ internal class MappingConverter(MatcherMapper mapper)
|
|||||||
|
|
||||||
case JsonMatcher jsonMatcher:
|
case JsonMatcher jsonMatcher:
|
||||||
{
|
{
|
||||||
var matcherType = jsonMatcher.GetType().Name;
|
var matcherType = jsonMatcher.GetType().FullName;
|
||||||
sb.AppendLine($" .WithBody(new {matcherType}(");
|
sb.AppendLine($" .WithBody(new {matcherType}(");
|
||||||
sb.AppendLine($" value: {ConvertToAnonymousObjectDefinition(jsonMatcher.Value, 3)},");
|
sb.AppendLine($" value: {ConvertToAnonymousObjectDefinition(jsonMatcher.Value, 3)},");
|
||||||
sb.AppendLine($" ignoreCase: {ToCSharpBooleanLiteral(jsonMatcher.IgnoreCase)},");
|
sb.AppendLine($" ignoreCase: {ToCSharpBooleanLiteral(jsonMatcher.IgnoreCase)},");
|
||||||
@@ -162,14 +162,18 @@ internal class MappingConverter(MatcherMapper mapper)
|
|||||||
// Guid
|
// Guid
|
||||||
sb.AppendLine($" .WithGuid(\"{mapping.Guid}\")");
|
sb.AppendLine($" .WithGuid(\"{mapping.Guid}\")");
|
||||||
|
|
||||||
// Scenario + State
|
// Scenario, ExecutionConditionState, NextState and StateTimes
|
||||||
if (!string.IsNullOrEmpty(mapping.Scenario))
|
if (!string.IsNullOrEmpty(mapping.Scenario))
|
||||||
{
|
{
|
||||||
sb.AppendLine($" .InScenario({ToCSharpStringLiteral(mapping.Scenario)})");
|
sb.AppendLine($" .InScenario({ToCSharpStringLiteral(mapping.Scenario)})");
|
||||||
}
|
}
|
||||||
|
if (!string.IsNullOrEmpty(mapping.ExecutionConditionState))
|
||||||
|
{
|
||||||
|
sb.AppendLine($" .WhenStateIs({ToCSharpStringLiteral(mapping.ExecutionConditionState)})");
|
||||||
|
}
|
||||||
if (!string.IsNullOrEmpty(mapping.NextState))
|
if (!string.IsNullOrEmpty(mapping.NextState))
|
||||||
{
|
{
|
||||||
sb.AppendLine($" .WhenStateIs({ToCSharpStringLiteral(mapping.NextState)}, {ToCSharpIntLiteral(mapping.TimesInSameState)})");
|
sb.AppendLine($" .WillSetStateTo({ToCSharpStringLiteral(mapping.NextState)}, {ToCSharpIntLiteral(mapping.TimesInSameState)})");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mapping.Probability != null)
|
if (mapping.Probability != null)
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ public class NotNullOrEmptyMatcher : IObjectMatcher, IStringMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public string GetCSharpCodeArguments()
|
public string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(NotNullOrEmptyMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}" +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}" +
|
||||||
$")";
|
$")";
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
// Copyright © WireMock.Net
|
// Copyright © WireMock.Net
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using AnyOfTypes;
|
using AnyOfTypes;
|
||||||
using JetBrains.Annotations;
|
using JetBrains.Annotations;
|
||||||
@@ -132,10 +130,10 @@ public class RegexMatcher : IStringMatcher, IIgnoreCaseMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public virtual string GetCSharpCodeArguments()
|
public virtual string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(RegexMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MappingConverterUtils.ToCSharpCodeArguments(_patterns)}, " +
|
$"new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] {{ {MappingConverterUtils.ToCSharpCodeArguments(_patterns)} }}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(_useRegexExtended)}, " +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(_useRegexExtended)}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
// Copyright © WireMock.Net
|
// Copyright © WireMock.Net
|
||||||
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using AnyOfTypes;
|
using AnyOfTypes;
|
||||||
using Stef.Validation;
|
using Stef.Validation;
|
||||||
@@ -74,10 +73,10 @@ public class WildcardMatcher : RegexMatcher
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public override string GetCSharpCodeArguments()
|
public override string GetCSharpCodeArguments()
|
||||||
{
|
{
|
||||||
return $"new {Name}" +
|
return $"new {typeof(WildcardMatcher).FullName}" +
|
||||||
$"(" +
|
$"(" +
|
||||||
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
$"{MatchBehaviour.GetFullyQualifiedEnumValue()}, " +
|
||||||
$"{MappingConverterUtils.ToCSharpCodeArguments(_patterns)}, " +
|
$"new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] {{ {MappingConverterUtils.ToCSharpCodeArguments(_patterns)} }}, " +
|
||||||
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
$"{CSharpFormatter.ToCSharpBooleanLiteral(IgnoreCase)}, " +
|
||||||
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
$"{MatchOperator.GetFullyQualifiedEnumValue()}" +
|
||||||
$")";
|
$")";
|
||||||
|
|||||||
+2
-2
@@ -2,8 +2,8 @@
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/foo1", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/foo1" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("p1", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "xyz"))
|
.WithParam("p1", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "xyz"))
|
||||||
)
|
)
|
||||||
.WithGuid("90356dba-b36c-469a-a17e-669cd84f1f05")
|
.WithGuid("90356dba-b36c-469a-a17e-669cd84f1f05")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
|
|||||||
+9
-9
@@ -2,8 +2,8 @@
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post2", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post2" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonPartialMatcher(
|
.WithBody(new WireMock.Matchers.JsonPartialMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
city = "City",
|
city = "City",
|
||||||
@@ -22,8 +22,8 @@ Some ""value"" in Line2")
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/foo2", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/foo2" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("p2", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "abc"))
|
.WithParam("p2", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "abc"))
|
||||||
.WithHeader("h1", "W/\"234f2q3r\"", true)
|
.WithHeader("h1", "W/\"234f2q3r\"", true)
|
||||||
)
|
)
|
||||||
.WithGuid("4126dec8-470b-4eff-93bb-c24f83b8b1fd")
|
.WithGuid("4126dec8-470b-4eff-93bb-c24f83b8b1fd")
|
||||||
@@ -37,8 +37,8 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post1", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post1" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonMatcher(
|
.WithBody(new WireMock.Matchers.JsonMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
city = "Amsterdam",
|
city = "Amsterdam",
|
||||||
@@ -55,7 +55,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("DELETE")
|
.UsingMethod("DELETE")
|
||||||
.WithUrl(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "https://localhost/test", false, WireMock.Matchers.MatchOperator.Or))
|
.WithUrl(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "https://localhost/test" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("c9929240-7ae8-4a5d-8ed8-0913479f6eeb")
|
.WithGuid("c9929240-7ae8-4a5d-8ed8-0913479f6eeb")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -99,8 +99,8 @@ text
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/foo1", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/foo1" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("p1", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "xyz"))
|
.WithParam("p1", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "xyz"))
|
||||||
)
|
)
|
||||||
.WithGuid("f74fd144-df53-404f-8e35-da22a640bd5f")
|
.WithGuid("f74fd144-df53-404f-8e35-da22a640bd5f")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/foo", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/foo" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("test", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, "abc"))
|
.WithParam("test", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, "abc"))
|
||||||
)
|
)
|
||||||
.WithGuid("41372914-1838-4c67-916b-b9aacdd096ce")
|
.WithGuid("41372914-1838-4c67-916b-b9aacdd096ce")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -13,8 +13,8 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post1", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post1" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonMatcher(
|
.WithBody(new WireMock.Matchers.JsonMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
Request = "Hello?"
|
Request = "Hello?"
|
||||||
@@ -30,8 +30,8 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post2", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post2" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonMatcher(
|
.WithBody(new WireMock.Matchers.JsonMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
city = "Amsterdam",
|
city = "Amsterdam",
|
||||||
@@ -48,7 +48,7 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/form-urlencoded", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/form-urlencoded" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithHeader("Content-Type", "application/x-www-form-urlencoded", true)
|
.WithHeader("Content-Type", "application/x-www-form-urlencoded", true)
|
||||||
.WithBody("name=John Doe")
|
.WithBody("name=John Doe")
|
||||||
)
|
)
|
||||||
@@ -59,8 +59,8 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/regex", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/regex" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("foo", new RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, ".*", false, true, WireMock.Matchers.MatchOperator.Or))
|
.WithParam("foo", new WireMock.Matchers.RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { ".*" }, false, true, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931004")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931004")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -69,11 +69,11 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/todo/items" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
||||||
.InScenario("To do list")
|
.InScenario("To do list")
|
||||||
.WhenStateIs("TodoList State Started", 2)
|
.WillSetStateTo("TodoList State Started", 2)
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
.WithBody("Buy milk")
|
.WithBody("Buy milk")
|
||||||
);
|
);
|
||||||
@@ -81,7 +81,7 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/delay", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/delay" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931006")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931006")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -91,7 +91,7 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/random-delay", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/random-delay" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931007")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931007")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -101,7 +101,7 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/prob", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/prob" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931008")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931008")
|
||||||
.WithProbability(0.1)
|
.WithProbability(0.1)
|
||||||
@@ -112,7 +112,7 @@ builder
|
|||||||
builder
|
builder
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/prob", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/prob" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931009")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931009")
|
||||||
.WithProbability(0.9)
|
.WithProbability(0.9)
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/foo", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/foo" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("test", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, "abc"))
|
.WithParam("test", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, "abc"))
|
||||||
)
|
)
|
||||||
.WithGuid("41372914-1838-4c67-916b-b9aacdd096ce")
|
.WithGuid("41372914-1838-4c67-916b-b9aacdd096ce")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -13,8 +13,8 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post1", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post1" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonMatcher(
|
.WithBody(new WireMock.Matchers.JsonMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
Request = "Hello?"
|
Request = "Hello?"
|
||||||
@@ -30,8 +30,8 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/users/post2", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/users/post2" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithBody(new JsonMatcher(
|
.WithBody(new WireMock.Matchers.JsonMatcher(
|
||||||
value: new
|
value: new
|
||||||
{
|
{
|
||||||
city = "Amsterdam",
|
city = "Amsterdam",
|
||||||
@@ -48,7 +48,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("POST")
|
.UsingMethod("POST")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/form-urlencoded", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/form-urlencoded" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithHeader("Content-Type", "application/x-www-form-urlencoded", true)
|
.WithHeader("Content-Type", "application/x-www-form-urlencoded", true)
|
||||||
.WithBody("name=John Doe")
|
.WithBody("name=John Doe")
|
||||||
)
|
)
|
||||||
@@ -59,8 +59,8 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/regex", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/regex" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("foo", new RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, ".*", false, true, WireMock.Matchers.MatchOperator.Or))
|
.WithParam("foo", new WireMock.Matchers.RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { ".*" }, false, true, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931004")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931004")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -69,11 +69,11 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/todo/items" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
||||||
.InScenario("To do list")
|
.InScenario("To do list")
|
||||||
.WhenStateIs("TodoList State Started", 2)
|
.WillSetStateTo("TodoList State Started", 2)
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
.WithBody("Buy milk")
|
.WithBody("Buy milk")
|
||||||
);
|
);
|
||||||
@@ -81,7 +81,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/delay", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/delay" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931006")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931006")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -91,7 +91,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/random-delay", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/random-delay" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931007")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931007")
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
@@ -101,7 +101,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/prob", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/prob" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931008")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931008")
|
||||||
.WithProbability(0.1)
|
.WithProbability(0.1)
|
||||||
@@ -112,7 +112,7 @@ server
|
|||||||
server
|
server
|
||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/prob", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/prob" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931009")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931009")
|
||||||
.WithProbability(0.9)
|
.WithProbability(0.9)
|
||||||
|
|||||||
@@ -257,7 +257,7 @@ public class FuncMatcherTests
|
|||||||
var code = matcher.GetCSharpCodeArguments();
|
var code = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
code.Should().Be("new FuncMatcher(/* Func<string?, bool> function */, WireMock.Matchers.MatchBehaviour.AcceptOnMatch)");
|
code.Should().Be("new WireMock.Matchers.FuncMatcher(/* Func<string?, bool> function */, WireMock.Matchers.MatchBehaviour.AcceptOnMatch)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -271,7 +271,7 @@ public class FuncMatcherTests
|
|||||||
var code = matcher.GetCSharpCodeArguments();
|
var code = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
code.Should().Be("new FuncMatcher(/* Func<byte[]?, bool> function */, WireMock.Matchers.MatchBehaviour.AcceptOnMatch)");
|
code.Should().Be("new WireMock.Matchers.FuncMatcher(/* Func<byte[]?, bool> function */, WireMock.Matchers.MatchBehaviour.AcceptOnMatch)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
|
|||||||
@@ -667,7 +667,7 @@ public class JsonMatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().StartWith($"new JsonMatcher(WireMock.Matchers.MatchBehaviour.{matchBehaviour},");
|
result.Should().StartWith($"new WireMock.Matchers.JsonMatcher(WireMock.Matchers.MatchBehaviour.{matchBehaviour},");
|
||||||
result.Should().EndWith($", {ignoreCase.ToString().ToLowerInvariant()}, {regex.ToString().ToLowerInvariant()}, {ignoreArrayOrder.ToString().ToLowerInvariant()})");
|
result.Should().EndWith($", {ignoreCase.ToString().ToLowerInvariant()}, {regex.ToString().ToLowerInvariant()}, {ignoreArrayOrder.ToString().ToLowerInvariant()})");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -14,7 +14,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new ContentTypeMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, \"application/json\", false)");
|
result.Should().Be("new WireMock.Matchers.ContentTypeMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { \"application/json\" }, false)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -27,7 +27,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, \"test\")");
|
result.Should().Be("new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.Or, \"test\")");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -53,7 +53,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new FormUrlEncodedMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, \"key=value\", false, WireMock.Matchers.MatchOperator.Or)");
|
result.Should().Be("new WireMock.Matchers.FormUrlEncodedMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { \"key=value\" }, false, WireMock.Matchers.MatchOperator.Or)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -66,7 +66,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new JmesPathMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, \"expression\")");
|
result.Should().Be("new WireMock.Matchers.JmesPathMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, \"expression\")");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -79,7 +79,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().StartWith("new JsonMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
result.Should().StartWith("new WireMock.Matchers.JsonMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -92,7 +92,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().StartWith("new JsonPartialMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
result.Should().StartWith("new WireMock.Matchers.JsonPartialMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -105,7 +105,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().StartWith("new JsonPartialWildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
result.Should().StartWith("new WireMock.Matchers.JsonPartialWildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch,");
|
||||||
}
|
}
|
||||||
|
|
||||||
//[Fact]
|
//[Fact]
|
||||||
@@ -118,7 +118,7 @@ public class MatcherTests
|
|||||||
// var result = matcher.GetCSharpCodeArguments();
|
// var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// // Assert
|
// // Assert
|
||||||
// result.Should().Be("new LinqMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, \"it.Contains(\\\"test\\\"\")");
|
// result.Should().Be("new WireMock.Matchers.LinqMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, \"it.Contains(\\\"test\\\"\")");
|
||||||
//}
|
//}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -131,7 +131,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, \"pattern\", false, true, WireMock.Matchers.MatchOperator.Or)");
|
result.Should().Be("new WireMock.Matchers.RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { \"pattern\" }, false, true, WireMock.Matchers.MatchOperator.Or)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -144,7 +144,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new SimMetricsMatcher.Levenstein(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, \"test\", SimMetrics.Net.SimMetricType.Levenstein, WireMock.Matchers.MatchOperator.Average)");
|
result.Should().Be("new WireMock.Matchers.SimMetricsMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { \"test\" }, SimMetrics.Net.SimMetricType.Levenstein, WireMock.Matchers.MatchOperator.Average)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -157,7 +157,7 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, \"pattern\", false, WireMock.Matchers.MatchOperator.Or)");
|
result.Should().Be("new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { \"pattern\" }, false, WireMock.Matchers.MatchOperator.Or)");
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@@ -170,6 +170,6 @@ public class MatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().Be("new XPathMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, null, \"pattern1\")");
|
result.Should().Be("new WireMock.Matchers.XPathMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, WireMock.Matchers.MatchOperator.Or, null, \"pattern1\")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -478,7 +478,7 @@ public class SystemTextJsonMatcherTests
|
|||||||
var result = matcher.GetCSharpCodeArguments();
|
var result = matcher.GetCSharpCodeArguments();
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
result.Should().StartWith($"new SystemTextJsonMatcher(WireMock.Matchers.MatchBehaviour.{matchBehaviour},");
|
result.Should().StartWith($"new WireMock.Matchers.SystemTextJsonMatcher(WireMock.Matchers.MatchBehaviour.{matchBehaviour},");
|
||||||
result.Should().EndWith($", {ignoreCase.ToString().ToLowerInvariant()}, {regex.ToString().ToLowerInvariant()}, {ignoreArrayOrder.ToString().ToLowerInvariant()})");
|
result.Should().EndWith($", {ignoreCase.ToString().ToLowerInvariant()}, {regex.ToString().ToLowerInvariant()}, {ignoreArrayOrder.ToString().ToLowerInvariant()})");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
// Copyright © WireMock.Net
|
// Copyright © WireMock.Net
|
||||||
|
|
||||||
|
using WireMock.Matchers;
|
||||||
using WireMock.Matchers.Request;
|
using WireMock.Matchers.Request;
|
||||||
using WireMock.Net.Tests.VerifyExtensions;
|
using WireMock.Net.Tests.VerifyExtensions;
|
||||||
using WireMock.RequestBuilders;
|
using WireMock.RequestBuilders;
|
||||||
@@ -97,6 +98,167 @@ public partial class MappingConverterTests
|
|||||||
return Verify(code, VerifySettings);
|
return Verify(code, VerifySettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_With_ScenarioAndState_Emits_WhenStateIs_And_WillSetStateTo()
|
||||||
|
{
|
||||||
|
// Assign: a stateful mapping that gates on state "Begin" and moves to "End" after 3 hits.
|
||||||
|
var mapping = CreateScenarioMapping("Ordering", executionConditionState: "Begin", nextState: "End", timesInSameState: 3);
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_With_NextStateOnly_Emits_WillSetStateTo_Without_Times()
|
||||||
|
{
|
||||||
|
// Assign: a start-state mapping that only sets the next state (no execution condition, default times).
|
||||||
|
var mapping = CreateScenarioMapping("Ordering", executionConditionState: null, nextState: "Begin", timesInSameState: null);
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_WithPath_RegexMatcher_MultiplePatterns()
|
||||||
|
{
|
||||||
|
// Assign
|
||||||
|
var mapping = CreateMappingWithRequest(Request.Create()
|
||||||
|
.UsingGet()
|
||||||
|
.WithPath(new RegexMatcher(MatchBehaviour.AcceptOnMatch, ["/a", "/b"])));
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_WithPath_SimMetricsMatcher_MultiplePatterns()
|
||||||
|
{
|
||||||
|
// Assign
|
||||||
|
var mapping = CreateMappingWithRequest(Request.Create()
|
||||||
|
.UsingGet()
|
||||||
|
.WithPath(new SimMetricsMatcher(new AnyOfTypes.AnyOf<string, Models.StringPattern>[] { "/a", "/b" })));
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_WithPath_ContentTypeMatcher_MultiplePatterns()
|
||||||
|
{
|
||||||
|
// Assign
|
||||||
|
var mapping = CreateMappingWithRequest(Request.Create()
|
||||||
|
.UsingGet()
|
||||||
|
.WithPath(new ContentTypeMatcher(["text/a", "text/b"])));
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public Task ToCSharpCode_WithPath_FormUrlEncodedMatcher_MultiplePatterns()
|
||||||
|
{
|
||||||
|
// Assign
|
||||||
|
var mapping = CreateMappingWithRequest(Request.Create()
|
||||||
|
.UsingGet()
|
||||||
|
.WithPath(new FormUrlEncodedMatcher(["a=1", "b=2"])));
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var code = _sut.ToCSharpCode(mapping, new MappingConverterSettings
|
||||||
|
{
|
||||||
|
AddStart = false,
|
||||||
|
ConverterType = MappingConverterType.Server
|
||||||
|
});
|
||||||
|
|
||||||
|
// Verify
|
||||||
|
return Verify(code, VerifySettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Mapping CreateMappingWithRequest(IRequestBuilder requestBuilder)
|
||||||
|
{
|
||||||
|
return new Mapping
|
||||||
|
(
|
||||||
|
guid: new Guid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc"),
|
||||||
|
updatedAt: _updatedAt,
|
||||||
|
title: string.Empty,
|
||||||
|
description: string.Empty,
|
||||||
|
path: null,
|
||||||
|
settings: _settings,
|
||||||
|
requestMatcher: (IRequestMatcher)requestBuilder,
|
||||||
|
provider: Response.Create().WithSuccess(),
|
||||||
|
priority: 0,
|
||||||
|
scenario: null,
|
||||||
|
executionConditionState: null,
|
||||||
|
nextState: null,
|
||||||
|
stateTimes: null,
|
||||||
|
webhooks: null,
|
||||||
|
useWebhooksFireAndForget: false,
|
||||||
|
timeSettings: null,
|
||||||
|
data: null
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Mapping CreateScenarioMapping(string scenario, string? executionConditionState, string? nextState, int? timesInSameState)
|
||||||
|
{
|
||||||
|
var request = Request.Create().UsingGet().WithPath("/test_path");
|
||||||
|
var response = Response.Create().WithSuccess();
|
||||||
|
|
||||||
|
return new Mapping
|
||||||
|
(
|
||||||
|
guid: new Guid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc"),
|
||||||
|
updatedAt: _updatedAt,
|
||||||
|
title: string.Empty,
|
||||||
|
description: string.Empty,
|
||||||
|
path: null,
|
||||||
|
settings: _settings,
|
||||||
|
requestMatcher: request,
|
||||||
|
provider: response,
|
||||||
|
priority: 0,
|
||||||
|
scenario: scenario,
|
||||||
|
executionConditionState: executionConditionState,
|
||||||
|
nextState: nextState,
|
||||||
|
stateTimes: timesInSameState,
|
||||||
|
webhooks: null,
|
||||||
|
useWebhooksFireAndForget: false,
|
||||||
|
timeSettings: null,
|
||||||
|
data: null
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
private IMapping CreateMapping()
|
private IMapping CreateMapping()
|
||||||
{
|
{
|
||||||
var guid = new Guid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc");
|
var guid = new Guid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc");
|
||||||
@@ -117,22 +279,22 @@ public partial class MappingConverterTests
|
|||||||
|
|
||||||
return new Mapping
|
return new Mapping
|
||||||
(
|
(
|
||||||
guid,
|
guid: guid,
|
||||||
_updatedAt,
|
updatedAt: _updatedAt,
|
||||||
string.Empty,
|
title: string.Empty,
|
||||||
string.Empty,
|
description: string.Empty,
|
||||||
null,
|
path: null,
|
||||||
_settings,
|
settings: _settings,
|
||||||
request,
|
requestMatcher: request,
|
||||||
response,
|
provider: response,
|
||||||
42,
|
priority: 42,
|
||||||
null,
|
scenario: null,
|
||||||
null,
|
executionConditionState: null,
|
||||||
null,
|
nextState: null,
|
||||||
null,
|
stateTimes: null,
|
||||||
null,
|
webhooks: null,
|
||||||
false,
|
useWebhooksFireAndForget: false,
|
||||||
null,
|
timeSettings: null,
|
||||||
data: null
|
data: null
|
||||||
).WithProbability(0.3);
|
).WithProbability(0.3);
|
||||||
}
|
}
|
||||||
|
|||||||
+9
@@ -0,0 +1,9 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.ContentTypeMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "text/a", "text/b" }, false))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+9
@@ -0,0 +1,9 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.FormUrlEncodedMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "a=1", "b=2" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+9
@@ -0,0 +1,9 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.RegexMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/a", "/b" }, false, true, WireMock.Matchers.MatchOperator.Or))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+9
@@ -0,0 +1,9 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.SimMetricsMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/a", "/b" }, SimMetrics.Net.SimMetricType.Levenstein, WireMock.Matchers.MatchOperator.Average))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+2
-2
@@ -2,8 +2,8 @@
|
|||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/test_path", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("q", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
.WithParam("q", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
||||||
.WithClientIP("112.123.100.99")
|
.WithClientIP("112.123.100.99")
|
||||||
.WithHeader("h-key", "h-value", true)
|
.WithHeader("h-key", "h-value", true)
|
||||||
.WithCookie("c-key", "c-value", true)
|
.WithCookie("c-key", "c-value", true)
|
||||||
|
|||||||
+2
-2
@@ -3,8 +3,8 @@ builder
|
|||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/test_path", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("q", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
.WithParam("q", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
||||||
.WithClientIP("112.123.100.99")
|
.WithClientIP("112.123.100.99")
|
||||||
.WithHeader("h-key", "h-value", true)
|
.WithHeader("h-key", "h-value", true)
|
||||||
.WithCookie("c-key", "c-value", true)
|
.WithCookie("c-key", "c-value", true)
|
||||||
|
|||||||
+11
@@ -0,0 +1,11 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.InScenario("Ordering")
|
||||||
|
.WillSetStateTo("Begin", null)
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+12
@@ -0,0 +1,12 @@
|
|||||||
|
server
|
||||||
|
.Given(Request.Create()
|
||||||
|
.UsingMethod("GET")
|
||||||
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
|
)
|
||||||
|
.WithGuid("8e7b9ab7-e18e-4502-8bc9-11e6679811cc")
|
||||||
|
.InScenario("Ordering")
|
||||||
|
.WhenStateIs("Begin")
|
||||||
|
.WillSetStateTo("End", 3)
|
||||||
|
.RespondWith(Response.Create()
|
||||||
|
.WithStatusCode(200)
|
||||||
|
);
|
||||||
+2
-2
@@ -2,8 +2,8 @@
|
|||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/test_path", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("q", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
.WithParam("q", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
||||||
.WithClientIP("112.123.100.99")
|
.WithClientIP("112.123.100.99")
|
||||||
.WithHeader("h-key", "h-value", true)
|
.WithHeader("h-key", "h-value", true)
|
||||||
.WithCookie("c-key", "c-value", true)
|
.WithCookie("c-key", "c-value", true)
|
||||||
|
|||||||
+2
-2
@@ -3,8 +3,8 @@ server
|
|||||||
.Given(Request.Create()
|
.Given(Request.Create()
|
||||||
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
.WithEarlyMismatch(WireMock.Matchers.Request.RequestMatcherType.Method)
|
||||||
.UsingMethod("GET")
|
.UsingMethod("GET")
|
||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/test_path", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WireMock.Matchers.WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, new AnyOfTypes.AnyOf<string, WireMock.Models.StringPattern>[] { "/test_path" }, false, WireMock.Matchers.MatchOperator.Or))
|
||||||
.WithParam("q", new ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
.WithParam("q", new WireMock.Matchers.ExactMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, false, WireMock.Matchers.MatchOperator.And, "42"))
|
||||||
.WithClientIP("112.123.100.99")
|
.WithClientIP("112.123.100.99")
|
||||||
.WithHeader("h-key", "h-value", true)
|
.WithHeader("h-key", "h-value", true)
|
||||||
.WithCookie("c-key", "c-value", true)
|
.WithCookie("c-key", "c-value", true)
|
||||||
|
|||||||
Reference in New Issue
Block a user