This commit is contained in:
Stef Heyenrath
2026-02-21 17:21:18 +01:00
parent 43a26ec4bc
commit 43be85a88a
27 changed files with 306 additions and 281 deletions

View File

@@ -16,6 +16,8 @@ namespace WireMock.Net.Tests;
public class ObservableLogEntriesTest
{
private readonly CancellationToken _ct = TestContext.Current.CancellationToken;
[Fact]
public async Task WireMockServer_LogEntriesChanged_WithException_Should_LogError()
{
@@ -39,7 +41,7 @@ public class ObservableLogEntriesTest
server.LogEntriesChanged += (sender, args) => throw new Exception();
// Act
await new HttpClient().GetAsync($"http://localhost:{server.Ports[0]}{path}");
await new HttpClient().GetAsync($"http://localhost:{server.Ports[0]}{path}", _ct);
// Assert
loggerMock.Verify(l => l.Error(It.IsAny<string>(), It.IsAny<object[]>()), Times.Once);
@@ -63,10 +65,10 @@ public class ObservableLogEntriesTest
server.LogEntriesChanged += (sender, args) => count++;
// Act 1a
await server.CreateClient().GetAsync(path);
await server.CreateClient().GetAsync(path, _ct);
// Act 1b
await server.CreateClient().GetAsync(path);
await server.CreateClient().GetAsync(path, _ct);
// Assert
count.Should().Be(2);
@@ -90,13 +92,13 @@ public class ObservableLogEntriesTest
int count = 0;
void OnServerOnLogEntriesChanged(object sender, NotifyCollectionChangedEventArgs args) => count++;
void OnServerOnLogEntriesChanged(object? sender, NotifyCollectionChangedEventArgs args) => count++;
// Add Handler
server.LogEntriesChanged += OnServerOnLogEntriesChanged;
// Act 1
await server.CreateClient().GetAsync(path);
await server.CreateClient().GetAsync(path, _ct);
// Assert 1
count.Should().Be(1);
@@ -105,7 +107,7 @@ public class ObservableLogEntriesTest
server.LogEntriesChanged -= OnServerOnLogEntriesChanged;
// Act 2
await server.CreateClient().GetAsync(path);
await server.CreateClient().GetAsync(path, _ct);
// Assert 2
count.Should().Be(1);
@@ -138,8 +140,8 @@ public class ObservableLogEntriesTest
var listOfTasks = new List<Task<HttpResponseMessage>>();
for (var i = 0; i < expectedCount; i++)
{
Thread.Sleep(50);
listOfTasks.Add(http.GetAsync($"{server.Urls[0]}{path}"));
await Task.Delay(50, _ct);
listOfTasks.Add(http.GetAsync($"{server.Urls[0]}{path}", _ct));
}
var responses = await Task.WhenAll(listOfTasks);
var countResponsesWithStatusNotOk = responses.Count(r => r.StatusCode != HttpStatusCode.OK);