mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-04-24 09:18:27 +02:00
Fix generating source code for Scenario and State (#1347)
* Fix generating source code for Scenario and State * Update src/WireMock.Net.Minimal/Serialization/MappingConverter.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/WireMock.Net.Minimal/Serialization/MappingConverter.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * . --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -161,6 +161,16 @@ internal class MappingConverter(MatcherMapper mapper)
|
|||||||
// Guid
|
// Guid
|
||||||
sb.AppendLine($" .WithGuid(\"{mapping.Guid}\")");
|
sb.AppendLine($" .WithGuid(\"{mapping.Guid}\")");
|
||||||
|
|
||||||
|
// Scenario + State
|
||||||
|
if (!string.IsNullOrEmpty(mapping.Scenario))
|
||||||
|
{
|
||||||
|
sb.AppendLine($" .InScenario({ToCSharpStringLiteral(mapping.Scenario)})");
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(mapping.NextState))
|
||||||
|
{
|
||||||
|
sb.AppendLine($" .WhenStateIs({ToCSharpStringLiteral(mapping.NextState)}, {ToCSharpIntLiteral(mapping.TimesInSameState)})");
|
||||||
|
}
|
||||||
|
|
||||||
if (mapping.Probability != null)
|
if (mapping.Probability != null)
|
||||||
{
|
{
|
||||||
sb.AppendLine($" .WithProbability({mapping.Probability.Value.ToString(CultureInfoUtils.CultureInfoEnUS)})");
|
sb.AppendLine($" .WithProbability({mapping.Probability.Value.ToString(CultureInfoUtils.CultureInfoEnUS)})");
|
||||||
|
|||||||
@@ -134,6 +134,8 @@ internal static class CSharpFormatter
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static string ToCSharpIntLiteral(int? value) => value != null ? string.Format(CultureInfo.InvariantCulture, "{0}", value) : Null;
|
||||||
|
|
||||||
public static string ToCSharpBooleanLiteral(bool value) => value ? "true" : "false";
|
public static string ToCSharpBooleanLiteral(bool value) => value ? "true" : "false";
|
||||||
|
|
||||||
public static string ToCSharpStringLiteral(string? value)
|
public static string ToCSharpStringLiteral(string? value)
|
||||||
|
|||||||
@@ -72,6 +72,8 @@ builder
|
|||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
||||||
|
.InScenario("To do list")
|
||||||
|
.WhenStateIs("TodoList State Started", 2)
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
.WithBody("Buy milk")
|
.WithBody("Buy milk")
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -72,6 +72,8 @@ server
|
|||||||
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
.WithPath(new WildcardMatcher(WireMock.Matchers.MatchBehaviour.AcceptOnMatch, "/todo/items", false, WireMock.Matchers.MatchOperator.Or))
|
||||||
)
|
)
|
||||||
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
.WithGuid("98fae52e-76df-47d9-876f-2ee32e931005")
|
||||||
|
.InScenario("To do list")
|
||||||
|
.WhenStateIs("TodoList State Started", 2)
|
||||||
.RespondWith(Response.Create()
|
.RespondWith(Response.Create()
|
||||||
.WithBody("Buy milk")
|
.WithBody("Buy milk")
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user