refactor(tests): Verbesserung der Nachrichtenbehandlung und Assert-Bedingungen in AuthClientTests

- Vereinfachte Assertions in StartAsync_ShouldConnectSuccessfully durch Entfernen expliziter Strings
- Aktualisierte ReceiveMessage_ShouldCallOnMessageReceived, um Nachrichteninhalte zu überprüfen
- Refaktorisierte Variablennamen in ReceiveMessage_ShouldCallOnMessageReceived für bessere Verständlichkeit
This commit is contained in:
Developer 02 2025-02-03 17:09:57 +01:00
parent 9fee7ea381
commit 5aab46a221
2 changed files with 18 additions and 8 deletions

View File

@ -32,8 +32,8 @@ public class AuthClientTests
// Assert
Assert.Multiple(() =>
{
Assert.That(client.IsConnected, "Connected");
Assert.That(!client.IsConnectionFailed, "There is no fail");
Assert.That(client.IsConnected);
Assert.That(!client.IsConnectionFailed);
Assert.That(client.ConnectionError, Is.Null);
});
}
@ -42,7 +42,8 @@ public class AuthClientTests
public async Task ReceiveMessage_ShouldCallOnMessageReceived()
{
// Arrange
bool wasCalled = false;
string rcv_user = string.Empty;
string rcv_msg = string.Empty;
// Sender client
using var provider_sender = Build(opt => opt.Url = HubUrl);
@ -53,17 +54,25 @@ public class AuthClientTests
using var provider_receiver = Build(opt =>
{
opt.Url = HubUrl;
opt.Events.OnMessageReceived = (user, message, logger) => wasCalled = true;
opt.Events.OnMessageReceived = (user, message, logger) =>
{
rcv_user = user;
rcv_msg = message;
};
});
var client_receiver = provider_receiver.GetRequiredService<IAuthClient>();
string testUser = "TestUser";
string testMessage = "Hello, World!";
string user = "user";
string message = "message";
// Act
await client_receiver.ReceiveMessageAsync(testUser, testMessage);
await client_receiver.ReceiveMessageAsync(user, message);
// Assert
Assert.That(wasCalled, Is.True, "OnMessageReceived was not called.");
Assert.Multiple(() =>
{
Assert.That(rcv_user, Is.EqualTo(user));
Assert.That(rcv_msg, Is.EqualTo(message));
});
}
}

View File

@ -19,6 +19,7 @@
<ItemGroup>
<ProjectReference Include="..\DigitalData.Auth.Client\DigitalData.Auth.Client.csproj" />
<ProjectReference Include="..\src\DigitalData.Auth.API\DigitalData.Auth.API.csproj" />
</ItemGroup>
<ItemGroup>