diff --git a/test/WireMock.Net.TUnitTests/WireMock.Net.TUnitTests.csproj b/test/WireMock.Net.TUnitTests/WireMock.Net.TUnitTests.csproj index eb764072..2c6781d3 100644 --- a/test/WireMock.Net.TUnitTests/WireMock.Net.TUnitTests.csproj +++ b/test/WireMock.Net.TUnitTests/WireMock.Net.TUnitTests.csproj @@ -6,6 +6,7 @@ enable true true + false diff --git a/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.GetMappings.cs b/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.GetMappings.cs index 10f213e1..3e24312c 100644 --- a/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.GetMappings.cs +++ b/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.GetMappings.cs @@ -37,7 +37,7 @@ message HelloReply { // Act var api = RestClient.For(server.Url); - var getMappingsResult = await api.GetMappingsAsync(); + var getMappingsResult = await api.GetMappingsAsync(TestContext.Current.CancellationToken); await Verify(getMappingsResult, VerifySettings); } @@ -50,7 +50,7 @@ message HelloReply { // Act var client = server.CreateClient(); - var getMappingsResult = await client.GetStringAsync("/__admin/mappings"); + var getMappingsResult = await client.GetStringAsync("/__admin/mappings", TestContext.Current.CancellationToken); await VerifyJson(getMappingsResult, VerifySettings); } diff --git a/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.PostMappings.cs b/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.PostMappings.cs index 8e363094..86fff36b 100644 --- a/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.PostMappings.cs +++ b/test/WireMock.Net.Tests/AdminApi/WireMockAdminApiTests.PostMappings.cs @@ -70,7 +70,7 @@ public partial class WireMockAdminApiTests Title = "test 2", Description = "description 2" }; - var result = await api.PostMappingsAsync(new[] { model1, model2 }); + var result = await api.PostMappingsAsync([model1, model2], TestContext.Current.CancellationToken); // Assert Check.That(result).IsNotNull(); @@ -89,7 +89,7 @@ public partial class WireMockAdminApiTests [InlineData(0, 0)] [InlineData(200, 200)] [InlineData("200", "200")] - public async Task IWireMockAdminApi_PostMappingAsync_WithStatusCode(object statusCode, object expectedStatusCode) + public async Task IWireMockAdminApi_PostMappingAsync_WithStatusCode(object? statusCode, object? expectedStatusCode) { // Arrange var server = WireMockServer.StartWithAdminInterface(); @@ -103,7 +103,7 @@ public partial class WireMockAdminApiTests Priority = 500, Title = "test" }; - var result = await api.PostMappingAsync(model); + var result = await api.PostMappingAsync(model, TestContext.Current.CancellationToken); // Assert Check.That(result).IsNotNull(); diff --git a/test/WireMock.Net.Tests/WireMockServer.Proxy.cs b/test/WireMock.Net.Tests/WireMockServer.Proxy.cs index d3b6b438..e7c399cc 100644 --- a/test/WireMock.Net.Tests/WireMockServer.Proxy.cs +++ b/test/WireMock.Net.Tests/WireMockServer.Proxy.cs @@ -46,7 +46,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert Check.That(server.Mappings).HasSize(2); @@ -57,6 +57,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_AdminFalse_With_SaveMapping_Is_True_And_SaveMappingToFile_Is_False_Should_AddInternalMappingOnly() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; var settings = new WireMockServerSettings { ProxyAndRecordSettings = new ProxyAndRecordSettings @@ -79,7 +80,7 @@ public class WireMockServerProxyTests Method = HttpMethod.Get, RequestUri = new Uri(server.Url!) }; - await client.SendAsync(requestMessage); + await client.SendAsync(requestMessage, cancellationToken); } // Assert @@ -90,6 +91,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_AdminTrue_With_SaveMapping_Is_True_And_SaveMappingToFile_Is_False_Should_AddInternalMappingOnly() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; var settings = new WireMockServerSettings { ProxyAndRecordSettings = new ProxyAndRecordSettings @@ -113,7 +115,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, cancellationToken); } // Assert @@ -168,7 +170,7 @@ public class WireMockServerProxyTests Content = new StringContent(stringBody) }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; - await new HttpClient(httpClientHandler).SendAsync(requestMessage); + await new HttpClient(httpClientHandler).SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert server.Mappings.Should().HaveCount(2); @@ -204,7 +206,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert server.Mappings.Should().HaveCount(1); @@ -241,7 +243,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert server.Mappings.Should().HaveCount(1); @@ -281,7 +283,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert server.Mappings.Should().HaveCount(1); @@ -313,7 +315,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert server.Mappings.Should().HaveCount(2); @@ -324,6 +326,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_Should_proxy_responses() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; string path = $"/prx_{Guid.NewGuid()}"; var server = WireMockServer.Start(); server @@ -338,8 +341,8 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - var response = await httpClient.SendAsync(requestMessage); - string content = await response.Content.ReadAsStringAsync(); + var response = await httpClient.SendAsync(requestMessage, cancellationToken); + string content = await response.Content.ReadAsStringAsync(cancellationToken); // Assert Check.That(server.Mappings).HasSize(1); @@ -380,7 +383,7 @@ public class WireMockServerProxyTests requestMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("text/plain"); requestMessage.Content.Headers.Add("bbb", "test"); using var httpClient = new HttpClient(); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var receivedRequest = serverForProxyForwarding.LogEntries.First().RequestMessage; @@ -397,6 +400,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_Should_preserve_Authorization_header_in_proxied_request() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; string path = $"/prx_{Guid.NewGuid()}"; var serverForProxyForwarding = WireMockServer.Start(); serverForProxyForwarding @@ -429,10 +433,10 @@ public class WireMockServerProxyTests Content = new StringContent("stringContent", Encoding.ASCII) }; requestMessage.Headers.Authorization = new AuthenticationHeaderValue("BASIC", "test-A"); - var result = await new HttpClient().SendAsync(requestMessage); + var result = await new HttpClient().SendAsync(requestMessage, cancellationToken); // Assert - (await result.Content.ReadAsStringAsync()).Should().Be("BASIC test-A"); + (await result.Content.ReadAsStringAsync(cancellationToken)).Should().Be("BASIC test-A"); var receivedRequest = serverForProxyForwarding.LogEntries.First().RequestMessage; receivedRequest.Headers!["Authorization"].ToString().Should().Be("BASIC test-A"); @@ -476,7 +480,7 @@ public class WireMockServerProxyTests requestMessage.Headers.Add("foobar", "exact_match"); requestMessage.Headers.Add("ok", "ok-value"); using var httpClient = new HttpClient(); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var mapping = server.Mappings.FirstOrDefault(m => m.Guid != defaultMapping.Guid); @@ -524,7 +528,7 @@ public class WireMockServerProxyTests var handler = new HttpClientHandler { CookieContainer = cookieContainer }; using var httpClient = new HttpClient(handler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var mapping = server.Mappings.FirstOrDefault(m => m.Guid != defaultMapping.Guid); @@ -569,7 +573,7 @@ public class WireMockServerProxyTests Content = new StringContent("stringContent"), }; using var httpClient = new HttpClient(); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var mapping = server.Mappings.FirstOrDefault(m => m.Guid != defaultMapping.Guid); @@ -617,7 +621,7 @@ public class WireMockServerProxyTests var handler = new HttpClientHandler(); using var httpClient = new HttpClient(handler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var mapping = serverForProxyForwarding.Mappings.FirstOrDefault(m => m.Guid != defaultMapping.Guid); @@ -650,7 +654,7 @@ public class WireMockServerProxyTests }; requestMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("text/plain"); using var httpClient = new HttpClient(); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert var receivedRequest = serverForProxyForwarding.LogEntries.First().RequestMessage; @@ -663,6 +667,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_Should_preserve_content_header_in_proxied_response() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; string path = $"/prx_{Guid.NewGuid()}"; var serverForProxyForwarding = WireMockServer.Start(); serverForProxyForwarding @@ -683,10 +688,11 @@ public class WireMockServerProxyTests RequestUri = new Uri($"{server.Urls[0]}{path}") }; using var httpClient = new HttpClient(); - var response = await httpClient.SendAsync(requestMessage); + var response = await httpClient.SendAsync(requestMessage, cancellationToken); // Assert - Check.That(await response.Content.ReadAsStringAsync()).IsEqualTo("body"); + string content = await response.Content.ReadAsStringAsync(cancellationToken); + Check.That(content).IsEqualTo("body"); Check.That(response.Content.Headers.Contains("Content-Type")).IsTrue(); Check.That(response.Content.Headers.GetValues("Content-Type")).ContainsExactly("text/plain"); } @@ -718,7 +724,7 @@ public class WireMockServerProxyTests }; var httpClientHandler = new HttpClientHandler { AllowAutoRedirect = false }; using var httpClient = new HttpClient(httpClientHandler); - var response = await httpClient.SendAsync(requestMessage); + var response = await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // Assert Check.That(response.Headers.Contains("Location")).IsTrue(); @@ -750,7 +756,7 @@ public class WireMockServerProxyTests var clientHandler = new HttpClientHandler(); clientHandler.CookieContainer.Add(requestUri, new Cookie("name", "value")); using var httpClient = new HttpClient(clientHandler); - await httpClient.SendAsync(requestMessage); + await httpClient.SendAsync(requestMessage, TestContext.Current.CancellationToken); // then var receivedRequest = serverForProxyForwarding.LogEntries.First().RequestMessage; @@ -790,7 +796,7 @@ public class WireMockServerProxyTests // act using var httpClient = new HttpClient(); - var response = await httpClient.PostAsync(server.Urls[0], new ByteArrayContent(jpegHeader)); + var response = await httpClient.PostAsync(server.Urls[0], new ByteArrayContent(jpegHeader), TestContext.Current.CancellationToken); // assert Check.That(response.StatusCode).IsEqualTo(HttpStatusCode.OK); @@ -800,6 +806,7 @@ public class WireMockServerProxyTests public async Task WireMockServer_Proxy_Should_set_BodyAsJson_in_proxied_response() { // Assign + var cancellationToken = TestContext.Current.CancellationToken; string path = $"/prx_{Guid.NewGuid()}"; var serverForProxyForwarding = WireMockServer.Start(); serverForProxyForwarding @@ -820,10 +827,10 @@ public class WireMockServerProxyTests RequestUri = new Uri($"{server.Urls[0]}{path}") }; using var httpClient = new HttpClient(); - var response = await httpClient.SendAsync(requestMessage); + var response = await httpClient.SendAsync(requestMessage, cancellationToken); // Assert - string content = await response.Content.ReadAsStringAsync(); + string content = await response.Content.ReadAsStringAsync(cancellationToken); Check.That(content).IsEqualTo("{\"i\":42}"); Check.That(response.Content.Headers.GetValues("Content-Type")).ContainsExactly("application/json; charset=utf-8"); }