diff --git a/Directory.Packages.props b/Directory.Packages.props index 2a165d354..63afc175b 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -5,9 +5,9 @@ - - - + + + diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationHandlerTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationHandlerTest.cs index c5ec94455..1d0384a5e 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationHandlerTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationHandlerTest.cs @@ -54,8 +54,7 @@ public async Task HandleAuthenticateAsync_ShouldReturnContent() app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, - hostFixture: null)) + })) { var client = webApp.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -93,9 +92,9 @@ public async Task HandleAuthenticateAsync_ShouldReturn401WithUnauthorizedMessage app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(BasicAuthorizationHeader.Scheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(BasicAuthorizationHeader.Scheme); var client = webApp.Host.GetTestClient(); var result = await client.GetAsync("/fake"); @@ -141,7 +140,7 @@ public async Task HandleAuthenticateAsync_EnsureAnonymousIsWorking() app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = webApp.Host.GetTestClient(); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationMiddlewareTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationMiddlewareTest.cs index 698cd0dfa..d8ca4a434 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Basic/BasicAuthenticationMiddlewareTest.cs @@ -36,10 +36,10 @@ public async Task InvokeAsync_ShouldThrowUnauthorizedException_InvalidCredential }, app => { app.UseBasicAuthentication(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -78,10 +78,10 @@ public async Task InvokeAsync_ShouldCaptureUnauthorizedException_InvalidCredenti { app.UseFaultDescriptorExceptionHandler(); app.UseBasicAuthentication(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var bb = new BasicAuthorizationHeaderBuilder() @@ -130,10 +130,10 @@ public async Task InvokeAsync_ShouldAuthenticateWhenApplyingAuthorizationHeader( context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationHandlerTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationHandlerTest.cs index c2cd513be..c71af5f41 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationHandlerTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationHandlerTest.cs @@ -59,10 +59,10 @@ public async Task HandleAuthenticateAsync_ShouldReturnContent_WithQopAuthenticat app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); var client = webApp.Host.GetTestClient(); var result = await client.GetAsync("/fake"); @@ -135,10 +135,10 @@ public async Task HandleAuthenticateAsync_ShouldReturnContent_QopAuthenticationI app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); var client = webApp.Host.GetTestClient(); var result = await client.GetAsync("/fake"); @@ -214,10 +214,10 @@ public async Task HandleAuthenticateAsync_ShouldReturnContent_WithServerSideHa1S app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); var client = webApp.Host.GetTestClient(); var result = await client.GetAsync("/fake"); @@ -289,9 +289,9 @@ public async Task HandleAuthenticateAsync_ShouldReturn401WithUnauthorizedMessage app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); var client = webApp.Host.GetTestClient(); var result = await client.GetAsync("/fake"); @@ -331,7 +331,7 @@ public async Task HandleAuthenticateAsync_EnsureAnonymousIsWorking() app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = webApp.Host.GetTestClient(); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationMiddlewareTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationMiddlewareTest.cs index d5532196f..f9bf7b1b9 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Digest/DigestAccessAuthenticationMiddlewareTest.cs @@ -52,10 +52,10 @@ public async Task InvokeAsync_ShouldNotBeAuthenticated() { app.UseExceptionMiddleware(); app.UseDigestAccessAuthentication(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -101,10 +101,10 @@ public async Task InvokeAsync_ShouldAuthenticateWhenApplyingAuthorizationHeader( context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -178,10 +178,10 @@ public async Task InvokeAsync_ShouldAuthenticateWhenApplyingAuthorizationHeaderN context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -253,10 +253,10 @@ public async Task InvokeAsync_ShouldAuthenticateWhenApplyingAuthorizationHeaderW context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationHandlerTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationHandlerTest.cs index 6f4c40e84..aa7efae52 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationHandlerTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationHandlerTest.cs @@ -60,7 +60,7 @@ public async Task HandleAuthenticateAsync_ShouldReturnContent() app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = webApp.Host.GetTestClient(); @@ -126,9 +126,9 @@ public async Task HandleAuthenticateAsync_ShouldReturn401WithUnauthorizedMessage app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = webApp.ServiceProvider.GetRequiredScopedService>().Get(AuthenticationScheme); + var options = webApp.Host.Services.GetRequiredScopedService>().Get(AuthenticationScheme); var client = webApp.Host.GetTestClient(); client.DefaultRequestHeaders.Add(HeaderNames.Date, DateTime.UtcNow.ToString("R")); @@ -183,7 +183,7 @@ public async Task HandleAuthenticateAsync_EnsureAnonymousIsWorking() app.UseAuthorization(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = webApp.Host.GetTestClient(); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationMiddlewareTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationMiddlewareTest.cs index fc70663ed..867a4f343 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthenticationMiddlewareTest.cs @@ -50,10 +50,10 @@ public async Task InvokeAsync_ShouldAuthenticateWhenApplyingAuthorizationHeader( context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var ue = await Assert.ThrowsAsync(async () => await pipeline(context)); diff --git a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthorizationHeaderBuilderTest.cs b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthorizationHeaderBuilderTest.cs index e5a08bdf0..70d46a2f5 100644 --- a/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthorizationHeaderBuilderTest.cs +++ b/test/Cuemon.AspNetCore.Authentication.Tests/Hmac/HmacAuthorizationHeaderBuilderTest.cs @@ -20,8 +20,8 @@ public HmacAuthorizationHeaderBuilderTest(ITestOutputHelper output) : base(outpu [Fact] public void Build_ShouldGenerateValidAuthorizationHeader() { - using var mw = WebHostTestFactory.Create(hostFixture: null); - var context = mw.ServiceProvider.GetRequiredService().HttpContext; + using var mw = WebHostTestFactory.Create(); + var context = mw.Host.Services.GetRequiredService().HttpContext; var timestamp = DateTime.Parse("2022-07-10T12:50:42.2737531Z", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind); diff --git a/test/Cuemon.AspNetCore.FunctionalTests/Diagnostics/ApplicationBuilderExtensionsTest.cs b/test/Cuemon.AspNetCore.FunctionalTests/Diagnostics/ApplicationBuilderExtensionsTest.cs index f4729c520..ed1514087 100644 --- a/test/Cuemon.AspNetCore.FunctionalTests/Diagnostics/ApplicationBuilderExtensionsTest.cs +++ b/test/Cuemon.AspNetCore.FunctionalTests/Diagnostics/ApplicationBuilderExtensionsTest.cs @@ -66,7 +66,7 @@ public async Task UseFaultDescriptorExceptionHandler_ShouldCaptureException_Rend { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/json")); return client.GetAsync("/"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); @@ -342,7 +342,7 @@ public async Task UseFaultDescriptorExceptionHandler_ShouldCaptureException_Rend { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/json")); return client.GetAsync("/"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); @@ -600,7 +600,7 @@ public async Task UseFaultDescriptorExceptionHandler_ShouldCaptureException_Rend { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/xml")); return client.GetAsync("/"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); @@ -690,7 +690,7 @@ public async Task UseFaultDescriptorExceptionHandler_ShouldCaptureException_Rend { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/xml")); return client.GetAsync("/"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); diff --git a/test/Cuemon.AspNetCore.Mvc.FunctionalTests/Filters/Diagnostics/FaultDescriptorFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.FunctionalTests/Filters/Diagnostics/FaultDescriptorFilterTest.cs index cffb71cee..3a4414a5f 100644 --- a/test/Cuemon.AspNetCore.Mvc.FunctionalTests/Filters/Diagnostics/FaultDescriptorFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.FunctionalTests/Filters/Diagnostics/FaultDescriptorFilterTest.cs @@ -51,7 +51,7 @@ public async Task OnException_ShouldCaptureException_RenderAsProblemDetails_Usin { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/json")); return client.GetAsync("/statuscodes/XXX/serverError"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); TestOutput.WriteLine(body); @@ -311,7 +311,7 @@ public async Task OnException_ShouldCaptureException_RenderAsDefault_UsingJson(F { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/json")); return client.GetAsync("/statuscodes/XXX/serverError"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); TestOutput.WriteLine(body); @@ -584,7 +584,7 @@ public async Task OnException_ShouldCaptureException_RenderAsProblemDetails_Usin { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/xml")); return client.GetAsync("/statuscodes/XXX/serverError"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); TestOutput.WriteLine(body); @@ -831,7 +831,7 @@ public async Task OnException_ShouldCaptureException_RenderAsDefault_UsingXml(Fa { client.DefaultRequestHeaders.Accept.Add(MediaTypeWithQualityHeaderValue.Parse("application/xml")); return client.GetAsync("/statuscodes/XXX/serverError"); - }, hostFixture: null); + }); var body = await response.Content.ReadAsStringAsync(); TestOutput.WriteLine(body); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Cacheable/HttpCacheableFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Cacheable/HttpCacheableFilterTest.cs index 5b0e6dfa2..edb6f8d44 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Cacheable/HttpCacheableFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Cacheable/HttpCacheableFilterTest.cs @@ -35,7 +35,7 @@ public async Task GetEtag_ShouldReturnOkWithEtagAndSubsequentlyNotModified(strin { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync(relativeEndpoint); @@ -64,7 +64,7 @@ public async Task GetLastModified_ShouldReturnOkWithLastModifiedAndSubsequentlyN { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/getCacheByLastModified"); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/FaultDescriptorFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/FaultDescriptorFilterTest.cs index 92a137afa..198b161eb 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/FaultDescriptorFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/FaultDescriptorFilterTest.cs @@ -41,7 +41,7 @@ public async Task OnException_ShouldIncludeFailure_DifferentiateOnUseBaseExcepti { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/400"); @@ -109,7 +109,7 @@ public async Task OnException_ShouldCaptureUserAgentException_BadRequestMessage( { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/it"); @@ -152,7 +152,7 @@ public async Task OnException_ShouldCaptureThrottlingException_TooManyRequests() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/it"); @@ -185,7 +185,7 @@ public async Task OnException_ShouldCaptureBadRequest() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/400"); @@ -218,7 +218,7 @@ public async Task OnException_ShouldCaptureConflict() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/409"); @@ -251,7 +251,7 @@ public async Task OnException_ShouldCaptureForbidden() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/403"); @@ -284,7 +284,7 @@ public async Task OnException_ShouldCaptureGone() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/410"); @@ -317,7 +317,7 @@ public async Task OnException_ShouldCaptureNotFound() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/404"); @@ -350,7 +350,7 @@ public async Task OnException_ShouldCapturePayloadTooLarge() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/413"); @@ -383,7 +383,7 @@ public async Task OnException_ShouldCapturePreconditionFailed() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/412"); @@ -416,7 +416,7 @@ public async Task OnException_ShouldCapturePreconditionRequired() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/428"); @@ -449,7 +449,7 @@ public async Task OnException_ShouldCaptureTooManyRequests() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/429"); @@ -482,7 +482,7 @@ public async Task OnException_ShouldCaptureUnauthorized() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/401"); @@ -515,7 +515,7 @@ public async Task OnException_ShouldCaptureMethodNotAllowed() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/405"); @@ -548,7 +548,7 @@ public async Task OnException_ShouldCaptureNotAcceptable() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/406"); @@ -581,7 +581,7 @@ public async Task OnException_ShouldCaptureGeneric() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/XXX"); @@ -611,7 +611,7 @@ public async Task OnException_ShouldCaptureUnsupportedMediaType() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/statuscodes/415"); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/ServerTimingFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/ServerTimingFilterTest.cs index e9faeb99c..368a101e4 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/ServerTimingFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Diagnostics/ServerTimingFilterTest.cs @@ -51,7 +51,7 @@ public async Task OnActionExecutionAsync_ShouldTimeMeasureFakeControllerAndFicti await next(); }); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecond"); @@ -78,7 +78,7 @@ public async Task OnActionExecutionAsync_ShouldTimeMeasureFakeController() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecond"); @@ -102,7 +102,7 @@ public async Task OnActionExecutionAsync_ShouldTimeMeasureFakeController_Automat { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondNoServerTimingFilter"); @@ -127,7 +127,7 @@ public async Task OnActionExecutionAsync_ShouldNotTimeMeasureFakeController_Auto { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondNoServerTimingFilter"); @@ -148,7 +148,7 @@ public async Task ServerTimingAttribute_ShouldTimeMeasureFakeController_GetAfter { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondAttribute"); @@ -173,12 +173,12 @@ public async Task ServerTimingAttribute_ShouldTimeMeasureFakeController_GetAfter { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondAttributeWithDefaults"); var serverTimingHeader = profiler.Result.Headers.GetValues(ServerTiming.HeaderName).Single(); - var loggerStore = filter.ServiceProvider.GetRequiredService>().GetTestStore(); + var loggerStore = filter.Host.Services.GetRequiredService>().GetTestStore(); Assert.InRange(profiler.Elapsed, TimeSpan.Zero, TimeSpan.FromSeconds(5)); Assert.True(profiler.Result.Headers.Contains("Server-Timing")); @@ -207,12 +207,12 @@ public async Task ServerTimingAttribute_ShouldTimeMeasureFakeController_GetAfter { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondAttributeWithDefaults"); var serverTimingHeader = profiler.Result.Headers.GetValues(ServerTiming.HeaderName).Single(); - var loggerStore = filter.ServiceProvider.GetRequiredService>().GetTestStore(); + var loggerStore = filter.Host.Services.GetRequiredService>().GetTestStore(); Assert.InRange(profiler.Elapsed, TimeSpan.Zero, TimeSpan.FromSeconds(5)); Assert.True(profiler.Result.Headers.Contains("Server-Timing")); @@ -239,14 +239,14 @@ public async Task ServerTimingAttribute_ShouldSuppressTimeMeasureFakeControllerA host.ConfigureWebHost(builder => builder.UseEnvironment("Production")); })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); - var loggerStore = filter.ServiceProvider.GetRequiredService>().GetTestStore(); + var loggerStore = filter.Host.Services.GetRequiredService>().GetTestStore(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecondAttribute"); Assert.InRange(profiler.Elapsed, TimeSpan.Zero, TimeSpan.FromSeconds(5)); - Assert.True(options.Value.SuppressHeaderPredicate(filter.HostingEnvironment)); + Assert.True(options.Value.SuppressHeaderPredicate(filter.Environment)); Assert.False(profiler.Result.Headers.Contains("Server-Timing")); Assert.True(loggerStore.Query(entry => entry.Message.StartsWith("Information: ServerTimingMetric { Name: action-result") && entry.Message.EndsWith("Description: \"action-description\" }")).Any(), "loggerStore.Query(entry => entry.Message.StartsWith('Information: ServerTimingMetric { Name: action-result')).Any()"); @@ -265,15 +265,15 @@ public async Task ServerTimingAttribute_ShouldSuppressTimeMeasureFakeController_ { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); var profiler = await TimeMeasure.WithFuncAsync(client.GetAsync, "/fake/oneSecond"); Assert.InRange(profiler.Elapsed, TimeSpan.Zero, TimeSpan.FromSeconds(5)); - Assert.True(options.Value.SuppressHeaderPredicate(filter.HostingEnvironment)); + Assert.True(options.Value.SuppressHeaderPredicate(filter.Environment)); Assert.False(profiler.Result.Headers.Contains("Server-Timing")); TestOutput.WriteLine(profiler.Elapsed.ToString()); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/ApiKeySentinelFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/ApiKeySentinelFilterTest.cs index e0863f4b7..b55452a29 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/ApiKeySentinelFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/ApiKeySentinelFilterTest.cs @@ -38,9 +38,9 @@ public async Task OnAuthorizationAsync_ShouldProvideForbiddenResult_WithBadReque { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/it"); @@ -68,9 +68,9 @@ public async Task OnAuthorizationAsync_ShouldProvideForbiddenResult_WithForbidde { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(options.Value.HeaderName, "Invalid-Key"); @@ -101,9 +101,9 @@ public async Task OnAuthorizationAsync_ShouldProvideForbiddenResult_WithCustom_C { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(options.Value.HeaderName, "Invalid-Key"); @@ -135,9 +135,9 @@ public async Task OnAuthorizationAsync_ShouldProvideForbiddenResult_WithCustom_F { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(options.Value.HeaderName, "Invalid-Key"); @@ -167,9 +167,9 @@ public async Task OnAuthorizationAsync_ShouldProvideOkResult_ShouldAllowRequestA { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(options.Value.HeaderName, "Cuemon-Key"); @@ -194,9 +194,9 @@ public async Task OnAuthorizationAsync_ShouldProvideForbiddenResult_UsingApiKeyS { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(options.Value.HeaderName, "Invalid-Key"); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/UserAgentSentinelFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/UserAgentSentinelFilterTest.cs index 5d880b088..e64c2fba1 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/UserAgentSentinelFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Headers/UserAgentSentinelFilterTest.cs @@ -41,9 +41,9 @@ public async Task OnActionExecutionAsync_ShouldCaptureUserAgentException_BadRequ { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/it"); @@ -78,9 +78,9 @@ public async Task OnActionExecutionAsync_ShouldCaptureUserAgentException_Forbidd { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -107,9 +107,9 @@ public async Task OnActionExecutionAsync_ShouldThrowUserAgentException_BadReques { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); var uae = await Assert.ThrowsAsync(async () => @@ -140,9 +140,9 @@ public async Task OnActionExecutionAsync_ShouldThrowUserAgentException_Forbidden { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -177,9 +177,9 @@ public async Task OnActionExecutionAsync_ShouldThrowUserAgentException_BadReques { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -205,9 +205,9 @@ public async Task OnActionExecutionAsync_ShouldAllowRequestUnconditional() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/fake/it"); @@ -232,9 +232,9 @@ public async Task OnActionExecutionAsync_ShouldAllowRequestAfterBeingValidated() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { - var options = filter.ServiceProvider.GetRequiredService>(); + var options = filter.Host.Services.GetRequiredService>(); var client = filter.Host.GetTestClient(); client.DefaultRequestHeaders.Add(HeaderNames.UserAgent, "Cuemon-Agent"); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelAttributeTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelAttributeTest.cs index 792b75a83..79e4ddac1 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelAttributeTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelAttributeTest.cs @@ -17,13 +17,13 @@ namespace Cuemon.AspNetCore.Mvc.Filters.Throttling { - public class ThrottlingSentinelAttributeTest : AspNetCoreHostTest + public class ThrottlingSentinelAttributeTest : WebHostTest { private readonly IServiceProvider _provider; - public ThrottlingSentinelAttributeTest(AspNetCoreHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public ThrottlingSentinelAttributeTest(ManagedWebHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] @@ -100,7 +100,7 @@ public async Task Bearer_VerifyHeadersAreSetCorrectly() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelFilterTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelFilterTest.cs index b6d67e2f1..3dfc399e2 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelFilterTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/Filters/Throttling/ThrottlingSentinelFilterTest.cs @@ -48,7 +48,7 @@ public async Task OnActionExecutionAsync_ShouldCaptureThrottlingException() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); @@ -99,7 +99,7 @@ public async Task OnActionExecutionAsync_ShouldThrowThrottlingException() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); @@ -116,7 +116,7 @@ public async Task OnActionExecutionAsync_ShouldThrowThrottlingException() result = await client.GetAsync("/fake/it"); }); - var options = filter.ServiceProvider.GetRequiredService>().Value; + var options = filter.Host.Services.GetRequiredService>().Value; var ratelimitReset = result.Headers.GetValues("RateLimit-Reset").Single().As(); Assert.Null(result.Headers.RetryAfter); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/GoneResultTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/GoneResultTest.cs index ec3efb194..a53d5943c 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/GoneResultTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/GoneResultTest.cs @@ -20,9 +20,9 @@ public GoneResultTest(ITestOutputHelper output) : base(output) [Fact] public async Task ExecuteResultAsync_ShouldReturnStatusCode303AndLocationUri() { - using (var host = WebHostTestFactory.Create(hostFixture: null)) + using (var host = WebHostTestFactory.Create()) { - var context = host.ServiceProvider.GetRequiredService().HttpContext; + var context = host.Host.Services.GetRequiredService().HttpContext; var sut = new GoneResult(); var ac = new ActionContext(context, new RouteData(), new ActionDescriptor()); diff --git a/test/Cuemon.AspNetCore.Mvc.Tests/SeeOtherResultTest.cs b/test/Cuemon.AspNetCore.Mvc.Tests/SeeOtherResultTest.cs index f1823033a..3aedf126b 100644 --- a/test/Cuemon.AspNetCore.Mvc.Tests/SeeOtherResultTest.cs +++ b/test/Cuemon.AspNetCore.Mvc.Tests/SeeOtherResultTest.cs @@ -13,13 +13,13 @@ namespace Cuemon.AspNetCore.Mvc { - public class SeeOtherResultTest : HostTest + public class SeeOtherResultTest : HostTest { private readonly IServiceProvider _provider; - public SeeOtherResultTest(HostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public SeeOtherResultTest(ManagedHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppImageTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppImageTagHelperTest.cs index 279ba020c..db20a5b33 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppImageTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppImageTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderImageTagForAppRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppImageTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderImageTagForAppRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppImageTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppLinkTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppLinkTagHelperTest.cs index 4e3259e3d..2acb5996d 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppLinkTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppLinkTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderLinkTagForAppRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppLinkTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderLinkTagForAppRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppLinkTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppScriptTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppScriptTagHelperTest.cs index e76d10030..a557335ae 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppScriptTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/AppScriptTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderScriptTagForAppRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppScriptTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderScriptTagForAppRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppScriptTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnImageTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnImageTagHelperTest.cs index f758ddb3b..4c0040b3c 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnImageTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnImageTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderImageTagForCdnRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnImageTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderImageTagForCdnRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnImageTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnLinkTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnLinkTagHelperTest.cs index 4ce2e3f93..c16c9b9a0 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnLinkTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnLinkTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderLinkTagForCdnRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnLinkTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderLinkTagForCdnRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnLinkTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnScriptTagHelperTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnScriptTagHelperTest.cs index 211f81d52..2a0b3abed 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnScriptTagHelperTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/CdnScriptTagHelperTest.cs @@ -37,7 +37,7 @@ public async Task Page_RenderScriptTagForCdnRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnScriptTagHelper"); @@ -70,7 +70,7 @@ public async Task Page_RenderScriptTagForCdnRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnScriptTagHelper"); diff --git a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/GenericRazorTest.cs b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/GenericRazorTest.cs index ada86e758..2e4488653 100644 --- a/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/GenericRazorTest.cs +++ b/test/Cuemon.AspNetCore.Razor.TagHelpers.Tests/GenericRazorTest.cs @@ -43,7 +43,7 @@ public async Task Index_VerifyCachingWorks() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/Index"); diff --git a/test/Cuemon.AspNetCore.Tests/Diagnostics/ServerTimingMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Diagnostics/ServerTimingMiddlewareTest.cs index 80940f66e..f48d9a270 100644 --- a/test/Cuemon.AspNetCore.Tests/Diagnostics/ServerTimingMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Diagnostics/ServerTimingMiddlewareTest.cs @@ -50,7 +50,7 @@ public async Task InvokeAsync_ShouldMimicSimpleAspNetProject() Thread.Sleep(400); return context.Response.WriteAsync("Hello World!"); }); - }, hostFixture: null).ConfigureAwait(false); + }).ConfigureAwait(false); Assert.StartsWith("use-middleware;dur=", response.Headers.Single(kvp => kvp.Key == ServerTiming.HeaderName).Value.FirstOrDefault()); } @@ -74,7 +74,7 @@ public async Task InvokeAsync_ShouldProviderServerTimingHeaderWithMetrics() }); app.UseServerTiming(); - }, hostFixture: null).ConfigureAwait(false); + }).ConfigureAwait(false); var header = response.Headers.GetValues(ServerTiming.HeaderName).ToArray(); @@ -103,9 +103,9 @@ public async Task InvokeAsync_ShouldExcludeServerTimingHeaderWithMetrics_ButIncl await next(context); }); app.UseServerTiming(); - }, hostFixture: null); + }); { - var logger = webApp.ServiceProvider.GetRequiredService>(); + var logger = webApp.Host.Services.GetRequiredService>(); var loggerStore = logger.GetTestStore(); var client = webApp.Host.GetTestClient(); @@ -139,7 +139,7 @@ public async Task InvokeAsync_ShouldNotProviderServerTimingHeaderWithMetrics() await next(context); }); //app.UseServerTiming(); - }, hostFixture: null).ConfigureAwait(false); + }).ConfigureAwait(false); response.Headers.TryGetValues(ServerTiming.HeaderName, out var serverTimingHeader); diff --git a/test/Cuemon.AspNetCore.Tests/Hosting/HostingEnvironmentMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Hosting/HostingEnvironmentMiddlewareTest.cs index 9200b4562..0dac2c85a 100644 --- a/test/Cuemon.AspNetCore.Tests/Hosting/HostingEnvironmentMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Hosting/HostingEnvironmentMiddlewareTest.cs @@ -12,15 +12,15 @@ namespace Cuemon.AspNetCore.Hosting { - public class HostingEnvironmentMiddlewareTest : AspNetCoreHostTest + public class HostingEnvironmentMiddlewareTest : WebHostTest { private readonly IServiceProvider _provider; private readonly IApplicationBuilder _pipeline; - public HostingEnvironmentMiddlewareTest(AspNetCoreHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public HostingEnvironmentMiddlewareTest(ManagedWebHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { _pipeline = hostFixture.Application; - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] @@ -33,7 +33,7 @@ public async Task InvokeAsync_ShouldHaveHostingEnvironmentHeader_ConfiguredByIOp await pipeline(context); Assert.True(context.Response.Headers.TryGetValue(options.Value.HeaderName, out var xHostingEnvironmentHeader)); - Assert.Equal(HostingEnvironment.EnvironmentName, xHostingEnvironmentHeader.Single()); + Assert.Equal(Environment.EnvironmentName, xHostingEnvironmentHeader.Single()); } public override void ConfigureServices(IServiceCollection services) diff --git a/test/Cuemon.AspNetCore.Tests/Http/Headers/ApiKeySentinelMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Headers/ApiKeySentinelMiddlewareTest.cs index b21fb677a..2c50d209a 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Headers/ApiKeySentinelMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Headers/ApiKeySentinelMiddlewareTest.cs @@ -29,10 +29,10 @@ public async Task InvokeAsync_ShouldThrowApiKeyException_BadRequest() using (var middleware = WebHostTestFactory.Create(pipelineSetup: app => { app.UseApiKeySentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var uae = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -55,10 +55,10 @@ public async Task InvokeAsync_ShouldThrowApiKeyException_Forbidden() }, app => { app.UseApiKeySentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(options.Value.HeaderName, "Invalid-Key"); @@ -86,10 +86,10 @@ public async Task InvokeAsync_ShouldCaptureApiKeyException_Forbidden() app.UseFaultDescriptorExceptionHandler(); app.UseApiKeySentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(options.Value.HeaderName, "Invalid-Key"); @@ -112,10 +112,10 @@ public async Task InvokeAsync_ShouldCaptureApiKeyException_BadRequest() app.UseFaultDescriptorExceptionHandler(); app.UseApiKeySentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); await pipeline(context); @@ -140,10 +140,10 @@ public async Task InvokeAsync_ShouldThrowApiKeyException_BadRequest_BecauseOfUse }, app => { app.UseApiKeySentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(options.Value.HeaderName, "Invalid-Key"); @@ -171,10 +171,10 @@ public async Task InvokeAsync_ShouldNotAllowRequest() context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); await pipeline(context); @@ -201,10 +201,10 @@ public async Task InvokeAsync_ShouldAllowRequestAfterBeingValidated() context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(options.Value.HeaderName, allowedKey); diff --git a/test/Cuemon.AspNetCore.Tests/Http/Headers/CacheableMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Headers/CacheableMiddlewareTest.cs index c0a8cc7cd..5e776fed9 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Headers/CacheableMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Headers/CacheableMiddlewareTest.cs @@ -54,7 +54,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => return Task.CompletedTask; }); - }, hostFixture: null); + }); Assert.Equal("no-transform, public, must-revalidate, max-age=604800", cacheControlHeaderValue); @@ -90,7 +90,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => return Task.CompletedTask; }); - }, hostFixture: null); + }); Assert.Equal("no-transform, public, must-revalidate, max-age=604800", cacheControlHeaderValue); @@ -130,7 +130,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => return Task.CompletedTask; }); - }, hostFixture: null); + }); Assert.Null(cacheControlHeaderValue); @@ -153,9 +153,9 @@ public async Task InvokeAsync_ShouldUseDefaultCacheControl_WithEtagValidator() { await context.Response.WriteAsync("This is a test."); }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; + var context = middleware.Host.Services.GetRequiredService().HttpContext; var pipeline = middleware.Application.Build(); await pipeline(context); @@ -195,9 +195,9 @@ public async Task InvokeAsync_ShouldUseDefaultCacheControl_WithEtagValidator_Exp context.Request.Headers.Add(HeaderNames.IfNoneMatch, "\"88b96039b6d7d57e7c7f30f4198882d5\""); await context.Response.WriteAsync("This is a test."); }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; + var context = middleware.Host.Services.GetRequiredService().HttpContext; var pipeline = middleware.Application.Build(); await pipeline(context); diff --git a/test/Cuemon.AspNetCore.Tests/Http/Headers/CorrelationIdentifierMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Headers/CorrelationIdentifierMiddlewareTest.cs index f0c1abaef..c9f33f184 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Headers/CorrelationIdentifierMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Headers/CorrelationIdentifierMiddlewareTest.cs @@ -13,15 +13,15 @@ namespace Cuemon.AspNetCore.Http.Headers { - public class CorrelationIdentifierMiddlewareTest : AspNetCoreHostTest + public class CorrelationIdentifierMiddlewareTest : WebHostTest { private readonly IServiceProvider _provider; private readonly IApplicationBuilder _pipeline; - public CorrelationIdentifierMiddlewareTest(AspNetCoreHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public CorrelationIdentifierMiddlewareTest(ManagedWebHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { _pipeline = hostFixture.Application; - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] diff --git a/test/Cuemon.AspNetCore.Tests/Http/Headers/RequestIdentifierMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Headers/RequestIdentifierMiddlewareTest.cs index 7e0c2fe16..863e8a1f0 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Headers/RequestIdentifierMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Headers/RequestIdentifierMiddlewareTest.cs @@ -14,15 +14,15 @@ namespace Cuemon.AspNetCore.Http.Headers { - public class RequestIdentifierMiddlewareTest : AspNetCoreHostTest + public class RequestIdentifierMiddlewareTest : WebHostTest { private readonly IServiceProvider _provider; private readonly IApplicationBuilder _pipeline; - public RequestIdentifierMiddlewareTest(AspNetCoreHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public RequestIdentifierMiddlewareTest(ManagedWebHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { _pipeline = hostFixture.Application; - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] diff --git a/test/Cuemon.AspNetCore.Tests/Http/Headers/UserAgentSentinelMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Headers/UserAgentSentinelMiddlewareTest.cs index 19d0d212e..e7b5c8b54 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Headers/UserAgentSentinelMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Headers/UserAgentSentinelMiddlewareTest.cs @@ -32,10 +32,10 @@ public async Task InvokeAsync_ShouldThrowUserAgentException_BadRequest() }, app => { app.UseUserAgentSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); var uae = await Assert.ThrowsAsync(async () => await pipeline(context)); @@ -62,10 +62,10 @@ public async Task InvokeAsync_ShouldThrowUserAgentException_Forbidden() }, app => { app.UseUserAgentSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -96,10 +96,10 @@ public async Task InvokeAsync_ShouldCaptureUserAgentException_Forbidden() app.UseFaultDescriptorExceptionHandler(); app.UseUserAgentSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -128,10 +128,10 @@ public async Task InvokeAsync_ShouldCaptureUserAgentException_BadRequest() app.UseFaultDescriptorExceptionHandler(); app.UseUserAgentSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); await pipeline(context); @@ -159,10 +159,10 @@ public async Task InvokeAsync_ShouldThrowUserAgentException_BadRequest_BecauseOf }, app => { app.UseUserAgentSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(HeaderNames.UserAgent, "Invalid-Agent"); @@ -190,10 +190,10 @@ public async Task InvokeAsync_ShouldAllowRequestUnconditional() context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); await pipeline(context); @@ -222,10 +222,10 @@ public async Task InvokeAsync_ShouldAllowRequestAfterBeingValidated() context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); context.Request.Headers.Add(HeaderNames.UserAgent, "Cuemon-Agent"); diff --git a/test/Cuemon.AspNetCore.Tests/Http/Throttling/ThrottlingSentinelMiddlewareTest.cs b/test/Cuemon.AspNetCore.Tests/Http/Throttling/ThrottlingSentinelMiddlewareTest.cs index 80124333e..54b0d1661 100644 --- a/test/Cuemon.AspNetCore.Tests/Http/Throttling/ThrottlingSentinelMiddlewareTest.cs +++ b/test/Cuemon.AspNetCore.Tests/Http/Throttling/ThrottlingSentinelMiddlewareTest.cs @@ -35,11 +35,11 @@ public async Task InvokeAsync_ShouldThrowThrottlingException_TooManyRequests() }, app => { app.UseThrottlingSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); - var cache = middleware.ServiceProvider.GetRequiredService(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); + var cache = middleware.Host.Services.GetRequiredService(); var pipeline = middleware.Application.Build(); var te = await Assert.ThrowsAsync(async () => @@ -76,11 +76,11 @@ public async Task InvokeAsync_ShouldCaptureThrottlingException_TooManyRequests() { app.UseFaultDescriptorExceptionHandler(); app.UseThrottlingSentinel(); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); - var cache = middleware.ServiceProvider.GetRequiredService(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); + var cache = middleware.Host.Services.GetRequiredService(); var pipeline = middleware.Application.Build(); for (var i = 0; i < 15; i++) @@ -123,10 +123,10 @@ public async Task InvokeAsync_ShouldRehydrate() context.Response.StatusCode = 200; return Task.CompletedTask; }); - }, hostFixture: null)) + })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; - var options = middleware.ServiceProvider.GetRequiredService>(); + var context = middleware.Host.Services.GetRequiredService().HttpContext; + var options = middleware.Host.Services.GetRequiredService>(); var pipeline = middleware.Application.Build(); for (var i = 0; i < 10; i++) diff --git a/test/Cuemon.Data.SqlClient.Tests/Assets/UserSecretsHostFixture.cs b/test/Cuemon.Data.SqlClient.Tests/Assets/UserSecretsHostFixture.cs index ad1ef7b11..721830cab 100644 --- a/test/Cuemon.Data.SqlClient.Tests/Assets/UserSecretsHostFixture.cs +++ b/test/Cuemon.Data.SqlClient.Tests/Assets/UserSecretsHostFixture.cs @@ -7,7 +7,7 @@ namespace Cuemon.Data.SqlClient.Assets { - public sealed class UserSecretsHostFixture : HostFixture + public sealed class UserSecretsHostFixture : ManagedHostFixture { public override void ConfigureHost(Test hostTest) { @@ -29,7 +29,7 @@ public override void ConfigureHost(Test hostTest) .ConfigureServices((context, services) => { Configuration = context.Configuration; - HostingEnvironment = context.HostingEnvironment; + Environment = context.HostingEnvironment; ConfigureServicesCallback(services); }).Build(); } diff --git a/test/Cuemon.Data.SqlClient.Tests/SqlDataManagerTest.cs b/test/Cuemon.Data.SqlClient.Tests/SqlDataManagerTest.cs index b093d792e..fc0853a58 100644 --- a/test/Cuemon.Data.SqlClient.Tests/SqlDataManagerTest.cs +++ b/test/Cuemon.Data.SqlClient.Tests/SqlDataManagerTest.cs @@ -20,7 +20,7 @@ public class SqlDataManagerTest : HostTest public SqlDataManagerTest(UserSecretsHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _manager = hostFixture.ServiceProvider.GetRequiredService(); + _manager = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Data.SqlClient.Tests/SqlDatabaseDependencyTest.cs b/test/Cuemon.Data.SqlClient.Tests/SqlDatabaseDependencyTest.cs index f99079a29..4e853501d 100644 --- a/test/Cuemon.Data.SqlClient.Tests/SqlDatabaseDependencyTest.cs +++ b/test/Cuemon.Data.SqlClient.Tests/SqlDatabaseDependencyTest.cs @@ -22,7 +22,7 @@ public class SqlDatabaseDependencyTest : HostTest public SqlDatabaseDependencyTest(UserSecretsHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _connection = hostFixture.ServiceProvider.GetRequiredService(); + _connection = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Data.SqlClient.Tests/SqlInOperatorTest.cs b/test/Cuemon.Data.SqlClient.Tests/SqlInOperatorTest.cs index 9948517e6..600dbbaa8 100644 --- a/test/Cuemon.Data.SqlClient.Tests/SqlInOperatorTest.cs +++ b/test/Cuemon.Data.SqlClient.Tests/SqlInOperatorTest.cs @@ -16,7 +16,7 @@ public class SqlInOperatorTest : HostTest public SqlInOperatorTest(UserSecretsHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _manager = hostFixture.ServiceProvider.GetRequiredService(); + _manager = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Data.SqlClient.Tests/SqlQueryBuilderTest.cs b/test/Cuemon.Data.SqlClient.Tests/SqlQueryBuilderTest.cs index 92800a0f2..10c142ddd 100644 --- a/test/Cuemon.Data.SqlClient.Tests/SqlQueryBuilderTest.cs +++ b/test/Cuemon.Data.SqlClient.Tests/SqlQueryBuilderTest.cs @@ -16,7 +16,7 @@ public class SqlQueryBuilderTest : HostTest public SqlQueryBuilderTest(UserSecretsHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _manager = hostFixture.ServiceProvider.GetRequiredService(); + _manager = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Data.Tests/DataManagerTest.cs b/test/Cuemon.Data.Tests/DataManagerTest.cs index d63031097..3e54c1612 100644 --- a/test/Cuemon.Data.Tests/DataManagerTest.cs +++ b/test/Cuemon.Data.Tests/DataManagerTest.cs @@ -14,13 +14,13 @@ namespace Cuemon.Data { - public class DataManagerTest : HostTest + public class DataManagerTest : HostTest { private readonly DataManager _manager; - public DataManagerTest(HostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) + public DataManagerTest(ManagedHostFixture hostFixture, ITestOutputHelper output) : base(hostFixture, output) { - _manager = hostFixture.ServiceProvider.GetRequiredService(); + _manager = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/ApplicationBuilderExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/ApplicationBuilderExtensionsTest.cs index 286801d1a..cac5aefcc 100644 --- a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/ApplicationBuilderExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/ApplicationBuilderExtensionsTest.cs @@ -29,9 +29,9 @@ public void UseBasicAuthentication_ShouldAddBasicAuthenticationMiddlewareAndBasi o.Authenticator = (username, password) => ClaimsPrincipal.Current; o.RequireSecureConnection = false; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredService>(); + var options = host.Host.Services.GetRequiredService>(); var middleware = host.Application.Build(); Assert.NotNull(options); @@ -55,9 +55,9 @@ public void UseDigestAuthentication_ShouldAddDigestAuthenticationMiddlewareAndDi }; o.RequireSecureConnection = false; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredService>(); + var options = host.Host.Services.GetRequiredService>(); var middleware = host.Application.Build(); Assert.NotNull(options); @@ -81,9 +81,9 @@ public void UseHmacAuthentication_ShouldAddHmacAuthenticationMiddlewareAndHmacAu }; o.RequireSecureConnection = false; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredService>(); + var options = host.Host.Services.GetRequiredService>(); var middleware = host.Application.Build(); Assert.NotNull(options); diff --git a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthenticationBuilderExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthenticationBuilderExtensionsTest.cs index 5e5313fdb..2c996c73d 100644 --- a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthenticationBuilderExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthenticationBuilderExtensionsTest.cs @@ -28,10 +28,10 @@ public void AddBasic_ShouldAddBasicAuthenticationHandlerAndBasicAuthenticationOp { o.Authenticator = (username, password) => ClaimsPrincipal.Current; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredScopedService>().Get(BasicAuthorizationHeader.Scheme); - var handler = host.ServiceProvider.GetRequiredService(); + var options = host.Host.Services.GetRequiredScopedService>().Get(BasicAuthorizationHeader.Scheme); + var handler = host.Host.Services.GetRequiredService(); Assert.NotNull(options); Assert.NotNull(handler); @@ -55,10 +55,10 @@ public void AddDigestAccess_ShouldAddDigestAuthenticationHandlerAndDigestAuthent return ClaimsPrincipal.Current; }; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); - var handler = host.ServiceProvider.GetRequiredService(); + var options = host.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + var handler = host.Host.Services.GetRequiredService(); Assert.NotNull(options); Assert.NotNull(handler); @@ -81,10 +81,10 @@ public void AddHmac_ShouldAddHmacAuthenticationHandlerAndHmacAuthenticationOptio return ClaimsPrincipal.Current; }; }); - }, hostFixture: null)) + })) { - var options = host.ServiceProvider.GetRequiredScopedService>().Get(HmacFields.Scheme); - var handler = host.ServiceProvider.GetRequiredService(); + var options = host.Host.Services.GetRequiredScopedService>().Get(HmacFields.Scheme); + var handler = host.Host.Services.GetRequiredService(); Assert.NotNull(options); Assert.NotNull(handler); diff --git a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthorizationResponseHandlerTest.cs b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthorizationResponseHandlerTest.cs index 619fbb2f3..07e76299e 100644 --- a/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthorizationResponseHandlerTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Authentication.Tests/AuthorizationResponseHandlerTest.cs @@ -3,6 +3,7 @@ using System.Net; using System.Security.Claims; using System.Threading; +using System.Threading.Tasks; using Cuemon.AspNetCore.Authentication.Basic; using Cuemon.AspNetCore.Authentication.Digest; using Cuemon.AspNetCore.Authentication.Hmac; @@ -15,6 +16,7 @@ using Codebelt.Extensions.Xunit; using Codebelt.Extensions.Xunit.Hosting; using Codebelt.Extensions.Xunit.Hosting.AspNetCore; +using Cuemon.Security.Cryptography; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; @@ -37,7 +39,7 @@ public AuthorizationResponseHandlerTest(ITestOutputHelper output) : base(output) [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallback_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallback_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -67,7 +69,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -108,7 +110,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallbackForAuthorization_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallbackForAuthorization_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -146,7 +148,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -185,7 +187,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallbackForAuthorization_HideReason_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseUsingDefaultPlainTextFallbackForAuthorization_HideReason_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -223,7 +225,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -262,7 +264,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseU [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseInXml_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseInXml_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -293,7 +295,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseI { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -352,7 +354,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseI [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -385,7 +387,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseI { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -441,7 +443,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldRenderResponseI } [Fact] - public async void AuthorizationResponseHandler_BasicScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() + public async Task AuthorizationResponseHandler_BasicScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() { using (var startup = WebHostTestFactory.Create(services => { @@ -477,7 +479,7 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldAuthorizeWithTe { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); var bb = new BasicAuthorizationHeaderBuilder() @@ -498,200 +500,275 @@ public async void AuthorizationResponseHandler_BasicScheme_ShouldAuthorizeWithTe } [Fact] - public async void AuthorizationResponseHandler_DigestScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() + public async Task AuthorizationResponseHandler_DigestScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() { - using (var startup = WebHostTestFactory.Create(services => - { - services.AddAuthentication(DigestAuthorizationHeader.Scheme) - .AddDigestAccess(o => - { - o.RequireSecureConnection = false; - o.Authenticator = (string username, out string password) => - { - if (username == "Agent") - { - password = "Test"; - return new ClaimsPrincipal(new ClaimsIdentity(Arguments.Yield(new Claim(ClaimTypes.Name, "Test Agent")), DigestAuthorizationHeader.Scheme)); - } - password = null; - return null; - }; - }); - services.AddAuthorization(o => - { - o.FallbackPolicy = new AuthorizationPolicyBuilder() - .AddAuthenticationSchemes(DigestAuthorizationHeader.Scheme) - .RequireAuthenticatedUser() - .Build(); + await using var startup = WebHostTestFactory.Create(services => + { + services.AddAuthentication(DigestAuthorizationHeader.Scheme) + .AddDigestAccess(o => + { + o.RequireSecureConnection = false; + o.Authenticator = (string username, out string password) => + { + if (username == "Agent") + { + password = "Test"; + return new ClaimsPrincipal(new ClaimsIdentity(Arguments.Yield(new Claim(ClaimTypes.Name, "Test Agent")), DigestAuthorizationHeader.Scheme)); + } + password = null; + return null; + }; + }); + services.AddAuthorization(o => + { + o.FallbackPolicy = new AuthorizationPolicyBuilder() + .AddAuthenticationSchemes(DigestAuthorizationHeader.Scheme) + .RequireAuthenticatedUser() + .Build(); + + }); + services.AddRouting(); + }, app => + { + app.UseRouting(); + app.UseAuthentication(); + app.UseAuthorization(); + app.UseEndpoints(endpoints => + { + endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); + }); + }); - }); - services.AddRouting(); - }, app => - { - app.UseRouting(); - app.UseAuthentication(); - app.UseAuthorization(); - app.UseEndpoints(endpoints => - { - endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); - }); - }, hostFixture: null)) + var client = startup.Host.GetTestClient(); + var options = startup.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); + + var result = await client.GetAsync("/"); + + var db = new DigestAuthorizationHeaderBuilder(options.Algorithm) + .AddRealm(options.Realm) + .AddUserName("Agent") + .AddUri("/") + .AddNc(1) + .AddCnonce() + .AddQopAuthentication() + .AddFromWwwAuthenticateHeader(result.Headers); + + var ha1 = db.ComputeHash1("Test"); + var ha2 = db.ComputeHash2("GET"); + + db.ComputeResponse(ha1, ha2); + db.AddResponse("Test", "GET"); + + var token = db.Build().ToString(); + + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); + client.DefaultRequestHeaders.Add(HeaderNames.Authorization, token); + + result = await client.GetAsync("/"); + var content = await result.Content.ReadAsStringAsync(); + + TestOutput.WriteLine(content); + + Assert.Equal(HttpStatusCode.OK, result.StatusCode); + Assert.Equal("Hello Test Agent", content); + } + + [Fact] + public async Task AuthorizationResponseHandler_DigestScheme_ShouldAuthorizeWithTestAgent_UsingMinimalStyleAspNetBootstrapping() + { + await using var startup = MinimalWebHostTestFactory.Create(services => { - var client = startup.Host.GetTestClient(); - var options = startup.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + services.AddAuthentication(DigestAuthorizationHeader.Scheme) + .AddDigestAccess(o => + { + o.RequireSecureConnection = false; + o.Authenticator = (string username, out string password) => + { + if (username == "Agent") + { + password = "Test"; + return new ClaimsPrincipal(new ClaimsIdentity(Arguments.Yield(new Claim(ClaimTypes.Name, "Test Agent")), DigestAuthorizationHeader.Scheme)); + } + password = null; + return null; + }; + o.Algorithm = UnkeyedCryptoAlgorithm.Sha512; + }); + services.AddAuthorization(o => + { + o.FallbackPolicy = new AuthorizationPolicyBuilder() + .AddAuthenticationSchemes(DigestAuthorizationHeader.Scheme) + .RequireAuthenticatedUser() + .Build(); + + }); + services.AddRouting(); + }, app => + { + app.UseRouting(); + app.UseAuthentication(); + app.UseAuthorization(); + app.UseEndpoints(endpoints => + { + endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); + }); + }); - client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); + var client = startup.Host.GetTestClient(); + var options = startup.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); - var result = await client.GetAsync("/"); + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); - var db = new DigestAuthorizationHeaderBuilder(options.Algorithm) - .AddRealm(options.Realm) - .AddUserName("Agent") - .AddUri("/") - .AddNc(1) - .AddCnonce() - .AddQopAuthentication() - .AddFromWwwAuthenticateHeader(result.Headers); + var result = await client.GetAsync("/"); - var ha1 = db.ComputeHash1("Test"); - var ha2 = db.ComputeHash2("GET"); + var db = new DigestAuthorizationHeaderBuilder(options.Algorithm) + .AddRealm(options.Realm) + .AddUserName("Agent") + .AddUri("/") + .AddNc(1) + .AddCnonce() + .AddQopAuthentication() + .AddFromWwwAuthenticateHeader(result.Headers); - db.ComputeResponse(ha1, ha2); - db.AddResponse("Test", "GET"); + var ha1 = db.ComputeHash1("Test"); + var ha2 = db.ComputeHash2("GET"); - var token = db.Build().ToString(); + db.ComputeResponse(ha1, ha2); + db.AddResponse("Test", "GET"); - client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); - client.DefaultRequestHeaders.Add(HeaderNames.Authorization, token); + var token = db.Build().ToString(); - result = await client.GetAsync("/"); - var content = await result.Content.ReadAsStringAsync(); + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "text/plain"); + client.DefaultRequestHeaders.Add(HeaderNames.Authorization, token); - TestOutput.WriteLine(content); + result = await client.GetAsync("/"); + var content = await result.Content.ReadAsStringAsync(); - Assert.Equal(HttpStatusCode.OK, result.StatusCode); - Assert.Equal("Hello Test Agent", content); - } + TestOutput.WriteLine(content); + + Assert.Equal(HttpStatusCode.OK, result.StatusCode); + Assert.Equal("Hello Test Agent", content); } [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_DigestScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_DigestScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { - using (var startup = WebHostTestFactory.Create(services => - { - services.AddJsonExceptionResponseFormatter(); - services.AddAuthorizationResponseHandler(); - services.AddAuthentication(DigestAuthorizationHeader.Scheme) - .AddDigestAccess(o => - { - o.RequireSecureConnection = false; - o.Authenticator = (string username, out string password) => - { - password = null; - return null; - }; - o.NonceGenerator = (timestamp, entityTag, privateKey) => "MjAyNC0wMi0wMyAyMTo1NjoyMVo6MDlhZTFhZDIyZGE4ZGExYTAxMmVkMzMwZWJlMzVkOTNlOGNmYTFmN2FiMzU5YzY0YTUwODFjZThkYjM1NzIwZA=="; - o.OpaqueGenerator = () => "dd1867244f862b1f858784a9b276d609"; - o.NonceExpiredParser = (nonce, timeToLive) => false; - }); - services.AddAuthorization(o => - { - o.FallbackPolicy = new AuthorizationPolicyBuilder() - .AddAuthenticationSchemes(DigestAuthorizationHeader.Scheme) - .RequireAuthenticatedUser() - .Build(); - - }); - services.AddRouting(); - services.PostConfigureAllExceptionDescriptorOptions(o => o.SensitivityDetails = sensitivityDetails); - }, app => - { - app.UseRouting(); - app.UseAuthentication(); - app.UseAuthorization(); - app.UseEndpoints(endpoints => - { - endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); - }); - }, hostFixture: null)) + await using var startup = WebHostTestFactory.Create(services => { - var client = startup.Host.GetTestClient(); + services.AddJsonExceptionResponseFormatter(); + services.AddAuthorizationResponseHandler(); + services.AddAuthentication(DigestAuthorizationHeader.Scheme) + .AddDigestAccess(o => + { + o.RequireSecureConnection = false; + o.Authenticator = (string username, out string password) => + { + password = null; + return null; + }; + o.NonceGenerator = (timestamp, entityTag, privateKey) => "MjAyNC0wMi0wMyAyMTo1NjoyMVo6MDlhZTFhZDIyZGE4ZGExYTAxMmVkMzMwZWJlMzVkOTNlOGNmYTFmN2FiMzU5YzY0YTUwODFjZThkYjM1NzIwZA=="; + o.OpaqueGenerator = () => "dd1867244f862b1f858784a9b276d609"; + o.NonceExpiredParser = (nonce, timeToLive) => false; + }); + services.AddAuthorization(o => + { + o.FallbackPolicy = new AuthorizationPolicyBuilder() + .AddAuthenticationSchemes(DigestAuthorizationHeader.Scheme) + .RequireAuthenticatedUser() + .Build(); + + }); + services.AddRouting(); + services.PostConfigureAllExceptionDescriptorOptions(o => o.SensitivityDetails = sensitivityDetails); + }, app => + { + app.UseRouting(); + app.UseAuthentication(); + app.UseAuthorization(); + app.UseEndpoints(endpoints => + { + endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); + }); + }); - client.DefaultRequestHeaders.Add(HeaderNames.Accept, "application/json"); + var client = startup.Host.GetTestClient(); - var result = await client.GetAsync("/"); - var options = startup.ServiceProvider.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "application/json"); - var db = new DigestAuthorizationHeaderBuilder(options.Algorithm) - .AddRealm(options.Realm) - .AddUserName("Agent") - .AddUri("/") - .AddNc(1) - .AddCnonce("Wt8oGT4OTmExU4DVU4ibzVZsotIYpild") - .AddQopAuthentication() - .AddFromWwwAuthenticateHeader(result.Headers); + var result = await client.GetAsync("/"); + var options = startup.Host.Services.GetRequiredScopedService>().Get(DigestAuthorizationHeader.Scheme); - var ha1 = db.ComputeHash1("Test"); - var ha2 = db.ComputeHash2("GET"); + var db = new DigestAuthorizationHeaderBuilder(options.Algorithm) + .AddRealm(options.Realm) + .AddUserName("Agent") + .AddUri("/") + .AddNc(1) + .AddCnonce("Wt8oGT4OTmExU4DVU4ibzVZsotIYpild") + .AddQopAuthentication() + .AddFromWwwAuthenticateHeader(result.Headers); - db.ComputeResponse(ha1, ha2); - db.AddResponse("Test", "GET"); + var ha1 = db.ComputeHash1("Test"); + var ha2 = db.ComputeHash2("GET"); - var token = db.Build().ToString(); + db.ComputeResponse(ha1, ha2); + db.AddResponse("Test", "GET"); - client.DefaultRequestHeaders.Add(HeaderNames.Accept, "application/json"); - client.DefaultRequestHeaders.Add(HeaderNames.Authorization, token); + var token = db.Build().ToString(); - result = await client.GetAsync("/"); + client.DefaultRequestHeaders.Add(HeaderNames.Accept, "application/json"); + client.DefaultRequestHeaders.Add(HeaderNames.Authorization, token); - var content = await result.Content.ReadAsStringAsync(); + result = await client.GetAsync("/"); - TestOutput.WriteLine(content); + var content = await result.Content.ReadAsStringAsync(); - Assert.Equal(HttpStatusCode.Unauthorized, result.StatusCode); - Assert.Equal("Digest realm=\"AuthenticationServer\", qop=\"auth, auth-int\", nonce=\"MjAyNC0wMi0wMyAyMTo1NjoyMVo6MDlhZTFhZDIyZGE4ZGExYTAxMmVkMzMwZWJlMzVkOTNlOGNmYTFmN2FiMzU5YzY0YTUwODFjZThkYjM1NzIwZA==\", opaque=\"dd1867244f862b1f858784a9b276d609\", stale=false, algorithm=SHA-256", result.Headers.WwwAuthenticate.ToString()); - if (sensitivityDetails == FaultSensitivityDetails.All) - { - Assert.Equal(""" - { - "error": { - "status": 401, - "code": "Unauthorized", - "message": "The request has not been applied because it lacks valid authentication credentials for the target resource.", - "failure": { - "type": "Cuemon.AspNetCore.Http.UnauthorizedException", - "message": "The request has not been applied because it lacks valid authentication credentials for the target resource.", - "headers": {}, - "statusCode": 401, - "reasonPhrase": "Unauthorized", - "inner": { - "type": "System.Security.SecurityException", - "message": "Unable to authenticate Agent." - } - } - } - } - """.ReplaceLineEndings(), content.ReplaceLineEndings()); - } - else - { - Assert.Equal(""" - { - "error": { - "status": 401, - "code": "Unauthorized", - "message": "The request has not been applied because it lacks valid authentication credentials for the target resource." + TestOutput.WriteLine(content); + + Assert.Equal(HttpStatusCode.Unauthorized, result.StatusCode); + Assert.Equal("Digest realm=\"AuthenticationServer\", qop=\"auth, auth-int\", nonce=\"MjAyNC0wMi0wMyAyMTo1NjoyMVo6MDlhZTFhZDIyZGE4ZGExYTAxMmVkMzMwZWJlMzVkOTNlOGNmYTFmN2FiMzU5YzY0YTUwODFjZThkYjM1NzIwZA==\", opaque=\"dd1867244f862b1f858784a9b276d609\", stale=false, algorithm=SHA-256", result.Headers.WwwAuthenticate.ToString()); + if (sensitivityDetails == FaultSensitivityDetails.All) + { + Assert.Equal(""" + { + "error": { + "status": 401, + "code": "Unauthorized", + "message": "The request has not been applied because it lacks valid authentication credentials for the target resource.", + "failure": { + "type": "Cuemon.AspNetCore.Http.UnauthorizedException", + "message": "The request has not been applied because it lacks valid authentication credentials for the target resource.", + "headers": {}, + "statusCode": 401, + "reasonPhrase": "Unauthorized", + "inner": { + "type": "System.Security.SecurityException", + "message": "Unable to authenticate Agent." } } - """.ReplaceLineEndings(), content.ReplaceLineEndings()); - } + } + } + """.ReplaceLineEndings(), content.ReplaceLineEndings()); + } + else + { + Assert.Equal(""" + { + "error": { + "status": 401, + "code": "Unauthorized", + "message": "The request has not been applied because it lacks valid authentication credentials for the target resource." + } + } + """.ReplaceLineEndings(), content.ReplaceLineEndings()); } } [Fact] - public async void AuthorizationResponseHandler_HmacScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() + public async Task AuthorizationResponseHandler_HmacScheme_ShouldAuthorizeWithTestAgent_UsingAspNetBootstrapping() { using (var startup = WebHostTestFactory.Create(services => { @@ -728,7 +805,7 @@ public async void AuthorizationResponseHandler_HmacScheme_ShouldAuthorizeWithTes { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); @@ -763,7 +840,7 @@ public async void AuthorizationResponseHandler_HmacScheme_ShouldAuthorizeWithTes [Theory] [InlineData(FaultSensitivityDetails.All)] [InlineData(FaultSensitivityDetails.None)] - public async void AuthorizationResponseHandler_HmacScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) + public async Task AuthorizationResponseHandler_HmacScheme_ShouldRenderResponseInJsonNative_UsingAspNetBootstrapping(FaultSensitivityDetails sensitivityDetails) { using (var startup = WebHostTestFactory.Create(services => { @@ -798,7 +875,7 @@ public async void AuthorizationResponseHandler_HmacScheme_ShouldRenderResponseIn { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); @@ -867,7 +944,7 @@ public async void AuthorizationResponseHandler_HmacScheme_ShouldRenderResponseIn } [Fact] - public async void AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_ShouldLogThrowTaskCanceledException_FromAuthorizationResponseHandler() + public async Task AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_ShouldLogThrowTaskCanceledException_FromAuthorizationResponseHandler() { using (var startup = WebHostTestFactory.Create(services => { @@ -904,10 +981,10 @@ public async void AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_Sh { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); - var loggerStore = startup.ServiceProvider.GetRequiredService>().GetTestStore(); + var loggerStore = startup.Host.Services.GetRequiredService>().GetTestStore(); var bb = new BasicAuthorizationHeaderBuilder() .AddUserName("Agent") @@ -930,7 +1007,7 @@ public async void AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_Sh } [Fact] - public async void AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_ShouldNotThrowTaskCanceledException_FromAuthorizationResponseHandler() + public async Task AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_ShouldNotThrowTaskCanceledException_FromAuthorizationResponseHandler() { using (var startup = WebHostTestFactory.Create(services => { @@ -967,10 +1044,10 @@ public async void AuthorizationResponseHandler_BasicScheme_VerifyAsyncOptions_Sh { endpoints.MapGet("/", context => context.Response.WriteAsync($"Hello {context.User.Identity!.Name}")); }); - }, hostFixture: null)) + })) { var client = startup.Host.GetTestClient(); - var loggerStore = startup.ServiceProvider.GetRequiredService>().GetTestStore(); + var loggerStore = startup.Host.Services.GetRequiredService>().GetTestStore(); var bb = new BasicAuthorizationHeaderBuilder() .AddUserName("Agent") diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/Converters/JsonConverterCollectionExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/Converters/JsonConverterCollectionExtensionsTest.cs index af881e475..28b7d0336 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/Converters/JsonConverterCollectionExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/Converters/JsonConverterCollectionExtensionsTest.cs @@ -37,9 +37,9 @@ public void AddHttpExceptionDescriptorConverter_ShouldAddHttpExceptionDescriptor oome = e; } - using (var middleware = WebHostTestFactory.Create(services => { services.AddFakeHttpContextAccessor(ServiceLifetime.Singleton); }, hostFixture: null)) + using (var middleware = WebHostTestFactory.Create(services => { services.AddFakeHttpContextAccessor(ServiceLifetime.Singleton); })) { - var context = middleware.ServiceProvider.GetRequiredService().HttpContext; + var context = middleware.Host.Services.GetRequiredService().HttpContext; var correlationId = Guid.NewGuid().ToString("N"); var requestId = Guid.NewGuid().ToString("N"); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationInputFormatterTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationInputFormatterTest.cs index 412a77b6d..7c00194e6 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationInputFormatterTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationInputFormatterTest.cs @@ -59,7 +59,7 @@ public async Task ReadRequestBodyAsync_ShouldReturnCreated() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var wf = new WeatherForecast(); var formatter = new JsonFormatter(o => diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationOutputFormatterTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationOutputFormatterTest.cs index 1eae47f52..c2fae01c7 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationOutputFormatterTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Text.Json.Tests/JsonSerializationOutputFormatterTest.cs @@ -56,7 +56,7 @@ public async Task WriteResponseBodyAsync_ShouldReturnOk() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationInputFormatterTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationInputFormatterTest.cs index f9af0a924..a6f49a670 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationInputFormatterTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationInputFormatterTest.cs @@ -59,7 +59,7 @@ public async Task ReadRequestBodyAsync_ShouldReturnCreated() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var wf = new WeatherForecast(); var formatter = new XmlFormatter(o => o.Settings.Writer.Indent = true); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationOutputFormatterTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationOutputFormatterTest.cs index 8e5d1c856..21e5d3c37 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationOutputFormatterTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Formatters.Xml.Tests/XmlSerializationOutputFormatterTest.cs @@ -56,7 +56,7 @@ public async Task WriteResponseBodyAsync_ShouldReturnOk() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.RazorPages.Tests/PageBaseExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.RazorPages.Tests/PageBaseExtensionsTest.cs index f4352df47..8798ba96e 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.RazorPages.Tests/PageBaseExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.RazorPages.Tests/PageBaseExtensionsTest.cs @@ -38,7 +38,7 @@ public async Task Page_RenderUrlForAppRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppUrl"); @@ -71,7 +71,7 @@ public async Task Page_RenderUrlForAppRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/AppUrl"); @@ -103,7 +103,7 @@ public async Task Page_RenderUrlForCdnRole() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnUrl"); @@ -136,7 +136,7 @@ public async Task Page_RenderUrlForCdnRole_WithCacheBusting() { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var result = await client.GetAsync("/CdnUrl"); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/HttpDependencyTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/HttpDependencyTest.cs index 2de295e45..53d7bc693 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/HttpDependencyTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/HttpDependencyTest.cs @@ -38,7 +38,7 @@ public async Task StartAsync_ShouldReceiveTwoSignalsFromHttpWatcher() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var ce = new CountdownEvent(2); @@ -94,7 +94,7 @@ public async Task StartAsync_ShouldReceiveTwoSignalsFromHttpWatcher_UsingReadRes { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var ce = new CountdownEvent(2); @@ -151,7 +151,7 @@ public async Task StartAsync_ShouldReceiveOnlyOneSignalFromHttpWatcher() { app.UseRouting(); app.UseEndpoints(routes => { routes.MapControllers(); }); - }, hostFixture: null)) + })) { var are = new AutoResetEvent(false); diff --git a/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/Rendering/HtmlHelperExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/Rendering/HtmlHelperExtensionsTest.cs index 91993f69e..f09609b53 100644 --- a/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/Rendering/HtmlHelperExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Mvc.Tests/Rendering/HtmlHelperExtensionsTest.cs @@ -38,7 +38,7 @@ public async Task EnsureThatBothRazorPagesAndControllerViewAreWorking() name: "default", pattern: "{controller=Home}/{action=Index}"); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var page = await client.GetAsync("/regions"); @@ -66,7 +66,7 @@ public async Task UseWhen_ShouldRenderClassWithActiveKeywordOnRegionsAnchorTag_A name: "default", pattern: "{controller=Home}/{action=Index}"); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var view = await client.GetAsync("/regions/da-dk/denmark"); @@ -97,7 +97,7 @@ public async Task UseWhen_ShouldRenderClassWithActiveKeywordOnHomeAnchorTag_AsCo name: "default", pattern: "{controller=Home}/{action=Index}"); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var view = await client.GetAsync("/"); @@ -130,7 +130,7 @@ public async Task UseWhen_ShouldRenderClassWithActiveKeywordOnRegionsAnchorTag_A { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var page = await client.GetAsync("/regions/da-dk/denmark"); @@ -164,7 +164,7 @@ public async Task UseWhen_ShouldRenderClassWithActiveKeywordOnHomeAnchorTag_AsPe { endpoints.MapRazorPages(); }); - }, hostFixture: null)) + })) { var client = filter.Host.GetTestClient(); var page = await client.GetAsync("/"); diff --git a/test/Cuemon.Extensions.AspNetCore.Tests/Hosting/ApplicationBuilderExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Tests/Hosting/ApplicationBuilderExtensionsTest.cs index cc9d5c6a5..2372c7c1f 100644 --- a/test/Cuemon.Extensions.AspNetCore.Tests/Hosting/ApplicationBuilderExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Tests/Hosting/ApplicationBuilderExtensionsTest.cs @@ -35,7 +35,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => sut = context.Response.Headers; return Task.CompletedTask; }); - }, hostSetup: hb => hb.UseEnvironment(Environments.LocalDevelopment), hostFixture: null); + }, hostSetup: hb => hb.UseEnvironment(Environments.LocalDevelopment)); Assert.Contains(sut, pair => pair.Key == sutOptions.HeaderName); Assert.Equal(Environments.LocalDevelopment, sut[sutOptions.HeaderName]); diff --git a/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpRequestExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpRequestExtensionsTest.cs index d0ab0ece5..4193b4e84 100644 --- a/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpRequestExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpRequestExtensionsTest.cs @@ -37,7 +37,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => sut = context.Request.IsGetOrHeadMethod(); return Task.CompletedTask; }); - }, hostFixture: null); + }); Condition.FlipFlop(method.Equals("GET", StringComparison.OrdinalIgnoreCase) || method.Equals("HEAD", StringComparison.OrdinalIgnoreCase), () => Assert.True(sut), () => Assert.False(sut)); } @@ -62,7 +62,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => statusCdoe = context.Response.StatusCode; return Task.CompletedTask; }); - }, hostFixture: null); + }); Condition.FlipFlop(checksum.Equals("xxxxxxxxxxxxxxxx"), () => { @@ -116,7 +116,7 @@ await WebHostTestFactory.RunAsync(pipelineSetup: app => statusCdoe = context.Response.StatusCode; return Task.CompletedTask; }); - }, hostFixture: null); + }); Condition.FlipFlop(modified.Equals("Thu, 01 Jan 1970 00:00:00 GMT"), () => { diff --git a/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpResponseExtensionsTest.cs b/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpResponseExtensionsTest.cs index a78d528f6..4c5c98886 100644 --- a/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpResponseExtensionsTest.cs +++ b/test/Cuemon.Extensions.AspNetCore.Tests/Http/HttpResponseExtensionsTest.cs @@ -16,15 +16,15 @@ namespace Cuemon.Extensions.AspNetCore.Http { - public class HttpResponseExtensionsTest : AspNetCoreHostTest + public class HttpResponseExtensionsTest : WebHostTest { private readonly IServiceProvider _provider; private readonly IApplicationBuilder _pipeline; - public HttpResponseExtensionsTest(AspNetCoreHostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) + public HttpResponseExtensionsTest(ManagedWebHostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) { _pipeline = hostFixture.Application; - _provider = hostFixture.ServiceProvider; + _provider = hostFixture.Host.Services; } [Fact] diff --git a/test/Cuemon.Extensions.Hosting.Tests/HostEnvironmentExtensionsTest.cs b/test/Cuemon.Extensions.Hosting.Tests/HostEnvironmentExtensionsTest.cs index 43a7dc543..d22a7bb41 100644 --- a/test/Cuemon.Extensions.Hosting.Tests/HostEnvironmentExtensionsTest.cs +++ b/test/Cuemon.Extensions.Hosting.Tests/HostEnvironmentExtensionsTest.cs @@ -6,9 +6,9 @@ namespace Cuemon.Extensions.Hosting { - public class HostEnvironmentExtensionsTest : HostTest + public class HostEnvironmentExtensionsTest : HostTest { - public HostEnvironmentExtensionsTest(HostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) + public HostEnvironmentExtensionsTest(ManagedHostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) { } @@ -25,30 +25,30 @@ public override void ConfigureServices(IServiceCollection services) public void IsLocalDevelopment_VerifyEnvironmentEqualsLocalDevelopment() { #if NET8_0_OR_GREATER - Assert.True(HostingEnvironment.IsLocalDevelopment()); - Assert.False(HostingEnvironment.IsProduction()); - Assert.False(HostingEnvironment.IsStaging()); - Assert.False(HostingEnvironment.IsDevelopment()); + Assert.True(Environment.IsLocalDevelopment()); + Assert.False(Environment.IsProduction()); + Assert.False(Environment.IsStaging()); + Assert.False(Environment.IsDevelopment()); #else - Assert.True(HostingEnvironment.IsLocalDevelopment()); - Assert.False(HostingEnvironment.IsProduction()); - Assert.False(HostingEnvironment.IsStaging()); - Assert.False(HostingEnvironment.IsDevelopment()); + Assert.True(Environment.IsLocalDevelopment()); + Assert.False(Environment.IsProduction()); + Assert.False(Environment.IsStaging()); + Assert.False(Environment.IsDevelopment()); #endif - TestOutput.WriteLine(HostingEnvironment.EnvironmentName); + TestOutput.WriteLine(Environment.EnvironmentName); } [Fact] public void IsLocalDevelopment_VerifyEnvironmentIsNonProduction() { #if NET8_0_OR_GREATER - Assert.True(HostingEnvironment.IsNonProduction()); - Assert.False(HostingEnvironment.IsProduction()); + Assert.True(Environment.IsNonProduction()); + Assert.False(Environment.IsProduction()); #else - Assert.True(HostingEnvironment.IsNonProduction()); - Assert.False(HostingEnvironment.IsProduction()); + Assert.True(Environment.IsNonProduction()); + Assert.False(Environment.IsProduction()); #endif - TestOutput.WriteLine(HostingEnvironment.EnvironmentName); + TestOutput.WriteLine(Environment.EnvironmentName); } } } \ No newline at end of file diff --git a/test/Cuemon.Extensions.Runtime.Caching.Tests/CacheEnumerableExtensionsTest.cs b/test/Cuemon.Extensions.Runtime.Caching.Tests/CacheEnumerableExtensionsTest.cs index ec24afb6a..d7e09dff5 100644 --- a/test/Cuemon.Extensions.Runtime.Caching.Tests/CacheEnumerableExtensionsTest.cs +++ b/test/Cuemon.Extensions.Runtime.Caching.Tests/CacheEnumerableExtensionsTest.cs @@ -13,14 +13,14 @@ namespace Cuemon.Extensions.Runtime.Caching { - public class CacheEnumerableExtensionsTest : HostTest + public class CacheEnumerableExtensionsTest : HostTest { private readonly SlimMemoryCache _cache; private readonly SlimMemoryCacheOptions _cacheOptions = new SlimMemoryCacheOptions(); - public CacheEnumerableExtensionsTest(HostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) + public CacheEnumerableExtensionsTest(ManagedHostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) { - _cache = hostFixture.ServiceProvider.GetRequiredService(); + _cache = hostFixture.Host.Services.GetRequiredService(); } [Fact] diff --git a/test/Cuemon.Runtime.Caching.Tests/SlimMemoryCacheTest.cs b/test/Cuemon.Runtime.Caching.Tests/SlimMemoryCacheTest.cs index d026d4e54..541203c06 100644 --- a/test/Cuemon.Runtime.Caching.Tests/SlimMemoryCacheTest.cs +++ b/test/Cuemon.Runtime.Caching.Tests/SlimMemoryCacheTest.cs @@ -13,7 +13,7 @@ namespace Cuemon.Runtime.Caching { [TestCaseOrderer(PriorityOrderer.Name, PriorityOrderer.Assembly)] - public class SlimMemoryCacheTest : HostTest + public class SlimMemoryCacheTest : HostTest { private readonly SlimMemoryCache _cache; private readonly SlimMemoryCacheOptions _cacheOptions = new SlimMemoryCacheOptions(); @@ -27,9 +27,9 @@ public class SlimMemoryCacheTest : HostTest private const int NumberOfItemsToCache = 1000; - public SlimMemoryCacheTest(HostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) + public SlimMemoryCacheTest(ManagedHostFixture hostFixture, ITestOutputHelper output = null) : base(hostFixture, output) { - _cache = hostFixture.ServiceProvider.GetRequiredService(); + _cache = hostFixture.Host.Services.GetRequiredService(); } [Fact, Priority(-1)]