using System.Security.Claims; using System.Text.Encodings.Web; using System.Threading.Tasks; using Microsoft.AspNetCore.Authentication; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; namespace CleanArchitecture.IntegrationTests.Infrastructure.Auth; public sealed class TestAuthenticationHandler : AuthenticationHandler { public TestAuthenticationHandler( IOptionsMonitor options, ILoggerFactory logger, UrlEncoder encoder) : base(options, logger, encoder) { } protected override Task HandleAuthenticateAsync() { var authenticationTicket = new AuthenticationTicket( new ClaimsPrincipal(Options.Identity), new AuthenticationProperties(), "Testing"); return Task.FromResult(AuthenticateResult.Success(authenticationTicket)); } }