Files
WireMock.Net-wiremock/test/WireMock.Net.Aspire.Tests/WireMockServerArgumentsTests.cs
Stef Heyenrath 4b12f3419f Add Aspire Extension (#1109)
* WireMock.Net.Aspire

* .

* xxx

* nuget

* [CodeFactor] Apply fixes

* ut

* t

* **WireMock.Net.Aspire**

* .

* t

* .

* .

* .

* TESTS

* docker utils

* Install .NET Aspire workload

* 4

* 4!

* projects: '**/test/**/*.csproj'

* script: 'dotnet workload install aspire'

* projects: '**/test/**/*.csproj'

* coverage

* WithWatchStaticMappings

* Admin

* typo

* port

* fix

* .

* x

* ...

* wait

* readme

* x

* 2

* async

* <Version>0.0.1-preview-03</Version>

* ...

* fix aspire

* admin/pwd

* Install .NET Aspire workload

* 0.0.1-preview-04

* WaitForHealthAsync

* ...

* IsHealthyAsync

* .

* add eps

* name: 'Execute Aspire Tests'

* name: Install .NET Aspire workload

* .

* dotnet test

* remove duplicate

* .

* cc

* dotnet tool install --global coverlet.console

* -*

* merge

* /d:sonar.pullrequest.provider=github

* <Version>0.0.1-preview-05</Version>

* // Copyright © WireMock.Net

* .

---------

Co-authored-by: codefactor-io <support@codefactor.io>
2024-07-27 18:53:59 +02:00

134 lines
3.8 KiB
C#

// Copyright © WireMock.Net
using FluentAssertions;
namespace WireMock.Net.Aspire.Tests;
public class WireMockServerArgumentsTests
{
[Fact]
public void DefaultValues_ShouldBeSetCorrectly()
{
// Arrange & Act
var args = new WireMockServerArguments();
// Assert
args.HttpPort.Should().BeNull();
args.AdminUsername.Should().BeNull();
args.AdminPassword.Should().BeNull();
args.ReadStaticMappings.Should().BeFalse();
args.WithWatchStaticMappings.Should().BeFalse();
args.MappingsPath.Should().BeNull();
}
[Fact]
public void HasBasicAuthentication_ShouldReturnTrue_WhenUsernameAndPasswordAreProvided()
{
// Arrange
var args = new WireMockServerArguments
{
AdminUsername = "admin",
AdminPassword = "password"
};
// Act & Assert
args.HasBasicAuthentication.Should().BeTrue();
}
[Fact]
public void HasBasicAuthentication_ShouldReturnFalse_WhenEitherUsernameOrPasswordIsNotProvided()
{
// Arrange
var argsWithUsernameOnly = new WireMockServerArguments { AdminUsername = "admin" };
var argsWithPasswordOnly = new WireMockServerArguments { AdminPassword = "password" };
// Act & Assert
argsWithUsernameOnly.HasBasicAuthentication.Should().BeFalse();
argsWithPasswordOnly.HasBasicAuthentication.Should().BeFalse();
}
[Fact]
public void GetArgs_WhenReadStaticMappingsIsTrue_ShouldContainReadStaticMappingsTrue()
{
// Arrange
var args = new WireMockServerArguments
{
ReadStaticMappings = true
};
// Act
var commandLineArgs = args.GetArgs();
// Assert
commandLineArgs.Should().ContainInOrder("--ReadStaticMappings", "true");
}
[Fact]
public void GetArgs_WhenReadStaticMappingsIsFalse_ShouldNotContainReadStaticMappingsTrue()
{
// Arrange
var args = new WireMockServerArguments
{
ReadStaticMappings = false
};
// Act
var commandLineArgs = args.GetArgs();
// Assert
commandLineArgs.Should().NotContain("--ReadStaticMappings", "true");
}
[Theory]
[InlineData(false)]
[InlineData(true)]
public void GetArgs_WhenWithWatchStaticMappingsIsTrue_ShouldContainWatchStaticMappingsTrue(bool readStaticMappings)
{
// Arrange
var args = new WireMockServerArguments
{
WithWatchStaticMappings = true,
ReadStaticMappings = readStaticMappings
};
// Act
var commandLineArgs = args.GetArgs();
// Assert
commandLineArgs.Should().ContainInOrder("--ReadStaticMappings", "true", "--WatchStaticMappings", "true", "--WatchStaticMappingsInSubdirectories", "true");
}
[Fact]
public void GetArgs_WhenWithWatchStaticMappingsIsFalse_ShouldNotContainWatchStaticMappingsTrue()
{
// Arrange
var args = new WireMockServerArguments
{
WithWatchStaticMappings = false
};
// Act
var commandLineArgs = args.GetArgs();
// Assert
commandLineArgs.Should().NotContain("--WatchStaticMappings", "true").And.NotContain("--WatchStaticMappingsInSubdirectories", "true");
}
[Fact]
public void GetArgs_ShouldIncludeAuthenticationDetails_WhenAuthenticationIsRequired()
{
// Arrange
var args = new WireMockServerArguments
{
AdminUsername = "admin",
AdminPassword = "password"
};
// Act
var commandLineArgs = args.GetArgs();
// Assert
commandLineArgs.Should().Contain("--AdminUserName", "admin");
commandLineArgs.Should().Contain("--AdminPassword", "password");
}
}