Files
WireMock.Net/test/WireMock.Net.Tests/Settings/WireMockServerSettingsParserTests.cs
Stef Heyenrath c24f2396ff ---
2026-02-14 12:35:15 +01:00

58 lines
1.8 KiB
C#

// Copyright © WireMock.Net
using AwesomeAssertions;
using WireMock.Settings;
namespace WireMock.Net.Tests.Settings;
public class WireMockServerSettingsParserTests
{
[Fact]
public void TryParseArguments_With_Args()
{
// Act
var result = WireMockServerSettingsParser.TryParseArguments(new[]
{
"--adminPath", "ap"
}, null, out var settings);
// Assert
result.Should().BeTrue();
settings.Should().NotBeNull();
settings!.AdminPath.Should().Be("ap");
}
[Fact]
public void TryParseArguments_Without_Args()
{
// Act
var result = WireMockServerSettingsParser.TryParseArguments(new string[] { }, null, out var settings);
// Assert
result.Should().BeTrue();
settings.Should().NotBeNull();
settings!.AdminPath.Should().Be("/__admin");
}
[Fact]
public void TryParseArguments_With_ActivityTracingEnabled_ShouldParseOptions()
{
// Act
var result = WireMockServerSettingsParser.TryParseArguments(new[]
{
"--ActivityTracingEnabled", "true",
"--ActivityTracingExcludeAdminRequests", "false",
"--ActivityTracingRecordRequestBody", "true",
"--ActivityTracingRecordResponseBody", "true"
}, null, out var settings);
// Assert
result.Should().BeTrue();
settings.Should().NotBeNull();
settings!.ActivityTracingOptions.Should().NotBeNull();
settings.ActivityTracingOptions!.ExcludeAdminRequests.Should().BeFalse();
settings.ActivityTracingOptions.RecordRequestBody.Should().BeTrue();
settings.ActivityTracingOptions.RecordResponseBody.Should().BeTrue();
settings.ActivityTracingOptions.RecordMatchDetails.Should().BeTrue();
}
}