SYMBOL INDEX (477 symbols across 143 files) FILE: src/Application/Common/Behaviours/AuthorizationBehaviour.cs class AuthorizationBehaviour (line 8) | public class AuthorizationBehaviour : IPipelineBeha... method AuthorizationBehaviour (line 14) | public AuthorizationBehaviour( method Handle (line 22) | public async Task Handle(TRequest request, RequestHandlerDe... FILE: src/Application/Common/Behaviours/LoggingBehaviour.cs class LoggingBehaviour (line 7) | public class LoggingBehaviour : IRequestPreProcessor method LoggingBehaviour (line 14) | public LoggingBehaviour(ILogger logger, IUser user, IIdentit... method Process (line 21) | public async Task Process(TRequest request, CancellationToken cancella... FILE: src/Application/Common/Behaviours/PerformanceBehaviour.cs class PerformanceBehaviour (line 7) | public class PerformanceBehaviour : IPipelineBehavi... method PerformanceBehaviour (line 15) | public PerformanceBehaviour( method Handle (line 27) | public async Task Handle(TRequest request, RequestHandlerDe... FILE: src/Application/Common/Behaviours/UnhandledExceptionBehaviour.cs class UnhandledExceptionBehaviour (line 5) | public class UnhandledExceptionBehaviour : IPipelin... method UnhandledExceptionBehaviour (line 10) | public UnhandledExceptionBehaviour(ILogger logger) method Handle (line 15) | public async Task Handle(TRequest request, RequestHandlerDe... FILE: src/Application/Common/Behaviours/ValidationBehaviour.cs class ValidationBehaviour (line 5) | public class ValidationBehaviour : IPipelineBehavio... method ValidationBehaviour (line 10) | public ValidationBehaviour(IEnumerable> validators) method Handle (line 15) | public async Task Handle(TRequest request, RequestHandlerDe... FILE: src/Application/Common/Exceptions/ForbiddenAccessException.cs class ForbiddenAccessException (line 3) | public class ForbiddenAccessException : Exception method ForbiddenAccessException (line 5) | public ForbiddenAccessException() : base() { } FILE: src/Application/Common/Exceptions/ValidationException.cs class ValidationException (line 5) | public class ValidationException : Exception method ValidationException (line 7) | public ValidationException() method ValidationException (line 13) | public ValidationException(IEnumerable failures) FILE: src/Application/Common/Interfaces/IApplicationDbContext.cs type IApplicationDbContext (line 5) | public interface IApplicationDbContext method SaveChangesAsync (line 11) | Task SaveChangesAsync(CancellationToken cancellationToken); FILE: src/Application/Common/Interfaces/IIdentityService.cs type IIdentityService (line 5) | public interface IIdentityService method GetUserNameAsync (line 7) | Task GetUserNameAsync(string userId); method IsInRoleAsync (line 9) | Task IsInRoleAsync(string userId, string role); method AuthorizeAsync (line 11) | Task AuthorizeAsync(string userId, string policyName); method CreateUserAsync (line 13) | Task<(Result Result, string UserId)> CreateUserAsync(string userName, ... method DeleteUserAsync (line 15) | Task DeleteUserAsync(string userId); FILE: src/Application/Common/Interfaces/IUser.cs type IUser (line 3) | public interface IUser FILE: src/Application/Common/Mappings/MappingExtensions.cs class MappingExtensions (line 5) | public static class MappingExtensions method PaginatedListAsync (line 7) | public static Task> PaginatedListAsync> ProjectToListAsync method PaginatedList (line 10) | public PaginatedList(IReadOnlyCollection items, int count, int page... method CreateAsync (line 22) | public static async Task> CreateAsync(IQueryable s... FILE: src/Application/Common/Models/Result.cs class Result (line 3) | public class Result method Result (line 5) | internal Result(bool succeeded, IEnumerable errors) method Success (line 15) | public static Result Success() method Failure (line 20) | public static Result Failure(IEnumerable errors) FILE: src/Application/Common/Security/AuthorizeAttribute.cs class AuthorizeAttribute (line 6) | [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited ... method AuthorizeAttribute (line 12) | public AuthorizeAttribute() { } FILE: src/Application/DependencyInjection.cs class DependencyInjection (line 7) | public static class DependencyInjection method AddApplicationServices (line 9) | public static void AddApplicationServices(this IHostApplicationBuilder... FILE: src/Application/TodoItems/Commands/CreateTodoItem/CreateTodoItem.cs type CreateTodoItemCommand (line 7) | public record CreateTodoItemCommand : IRequest class CreateTodoItemCommandHandler (line 14) | public class CreateTodoItemCommandHandler : IRequestHandler Handle(CreateTodoItemCommand request, Cancellat... FILE: src/Application/TodoItems/Commands/CreateTodoItem/CreateTodoItemCommandValidator.cs class CreateTodoItemCommandValidator (line 3) | public class CreateTodoItemCommandValidator : AbstractValidator logger) method Handle (line 15) | public Task Handle(TodoItemCompletedEvent notification, CancellationTo... FILE: src/Application/TodoItems/EventHandlers/LogTodoItemCreated.cs class LogTodoItemCreated (line 6) | public class LogTodoItemCreated : INotificationHandler logger) method Handle (line 15) | public Task Handle(TodoItemCreatedEvent notification, CancellationToke... FILE: src/Application/TodoItems/Queries/GetTodoItemsWithPagination/GetTodoItemsWithPagination.cs type GetTodoItemsWithPaginationQuery (line 7) | public record GetTodoItemsWithPaginationQuery : IRequest> Handle(GetTodoItems... FILE: src/Application/TodoItems/Queries/GetTodoItemsWithPagination/GetTodoItemsWithPaginationQueryValidator.cs class GetTodoItemsWithPaginationQueryValidator (line 3) | public class GetTodoItemsWithPaginationQueryValidator : AbstractValidato... method GetTodoItemsWithPaginationQueryValidator (line 5) | public GetTodoItemsWithPaginationQueryValidator() FILE: src/Application/TodoItems/Queries/GetTodoItemsWithPagination/TodoItemBriefDto.cs class TodoItemBriefDto (line 5) | public class TodoItemBriefDto class Mapping (line 15) | private class Mapping : Profile method Mapping (line 17) | public Mapping() FILE: src/Application/TodoLists/Commands/CreateTodoList/CreateTodoList.cs type CreateTodoListCommand (line 6) | public record CreateTodoListCommand : IRequest class CreateTodoListCommandHandler (line 11) | public class CreateTodoListCommandHandler : IRequestHandler Handle(CreateTodoListCommand request, Cancellat... FILE: src/Application/TodoLists/Commands/CreateTodoList/CreateTodoListCommandValidator.cs class CreateTodoListCommandValidator (line 5) | public class CreateTodoListCommandValidator : AbstractValidator BeUniqueTitle(string title, CancellationToken ... FILE: src/Application/TodoLists/Commands/DeleteTodoList/DeleteTodoList.cs type DeleteTodoListCommand (line 5) | public record DeleteTodoListCommand(int Id) : IRequest; class DeleteTodoListCommandHandler (line 7) | public class DeleteTodoListCommandHandler : IRequestHandler BeUniqueTitle(UpdateTodoListCommand model, str... FILE: src/Application/TodoLists/Queries/GetTodos/GetTodos.cs type GetTodosQuery (line 8) | [Authorize] class GetTodosQueryHandler (line 11) | public class GetTodosQueryHandler : IRequestHandler method GetTodosQueryHandler (line 16) | public GetTodosQueryHandler(IApplicationDbContext context, IMapper map... method Handle (line 22) | public async Task Handle(GetTodosQuery request, CancellationT... FILE: src/Application/TodoLists/Queries/GetTodos/TodoItemDto.cs class TodoItemDto (line 5) | public class TodoItemDto class Mapping (line 19) | private class Mapping : Profile method Mapping (line 21) | public Mapping() FILE: src/Application/TodoLists/Queries/GetTodos/TodoListDto.cs class TodoListDto (line 5) | public class TodoListDto method TodoListDto (line 7) | public TodoListDto() class Mapping (line 20) | private class Mapping : Profile method Mapping (line 22) | public Mapping() FILE: src/Application/TodoLists/Queries/GetTodos/TodosVm.cs class TodosVm (line 5) | public class TodosVm FILE: src/Application/WeatherForecasts/Queries/GetWeatherForecasts/GetWeatherForecastsQuery.cs type GetWeatherForecastsQuery (line 3) | public record GetWeatherForecastsQuery : IRequest> Handle(GetWeatherForec... FILE: src/Application/WeatherForecasts/Queries/GetWeatherForecasts/WeatherForecast.cs class WeatherForecast (line 3) | public class WeatherForecast FILE: src/Domain/Common/BaseAuditableEntity.cs class BaseAuditableEntity (line 3) | public abstract class BaseAuditableEntity : BaseEntity FILE: src/Domain/Common/BaseEntity.cs class BaseEntity (line 5) | public abstract class BaseEntity method AddDomainEvent (line 16) | public void AddDomainEvent(BaseEvent domainEvent) method RemoveDomainEvent (line 21) | public void RemoveDomainEvent(BaseEvent domainEvent) method ClearDomainEvents (line 26) | public void ClearDomainEvents() FILE: src/Domain/Common/BaseEvent.cs class BaseEvent (line 5) | public abstract class BaseEvent : INotification FILE: src/Domain/Common/ValueObject.cs class ValueObject (line 4) | public abstract class ValueObject method EqualOperator (line 6) | protected static bool EqualOperator(ValueObject left, ValueObject right) method NotEqualOperator (line 16) | protected static bool NotEqualOperator(ValueObject left, ValueObject r... method GetEqualityComponents (line 21) | protected abstract IEnumerable GetEqualityComponents(); method Equals (line 23) | public override bool Equals(object? obj) method GetHashCode (line 34) | public override int GetHashCode() FILE: src/Domain/Constants/Policies.cs class Policies (line 3) | public abstract class Policies FILE: src/Domain/Constants/Roles.cs class Roles (line 3) | public abstract class Roles FILE: src/Domain/Entities/TodoItem.cs class TodoItem (line 3) | public class TodoItem : BaseAuditableEntity FILE: src/Domain/Entities/TodoList.cs class TodoList (line 3) | public class TodoList : BaseAuditableEntity FILE: src/Domain/Enums/PriorityLevel.cs type PriorityLevel (line 3) | public enum PriorityLevel FILE: src/Domain/Events/TodoItemCompletedEvent.cs class TodoItemCompletedEvent (line 3) | public class TodoItemCompletedEvent : BaseEvent method TodoItemCompletedEvent (line 5) | public TodoItemCompletedEvent(TodoItem item) FILE: src/Domain/Events/TodoItemCreatedEvent.cs class TodoItemCreatedEvent (line 3) | public class TodoItemCreatedEvent : BaseEvent method TodoItemCreatedEvent (line 5) | public TodoItemCreatedEvent(TodoItem item) FILE: src/Domain/Events/TodoItemDeletedEvent.cs class TodoItemDeletedEvent (line 3) | public class TodoItemDeletedEvent : BaseEvent method TodoItemDeletedEvent (line 5) | public TodoItemDeletedEvent(TodoItem item) FILE: src/Domain/Exceptions/UnsupportedColourException.cs class UnsupportedColourException (line 3) | public class UnsupportedColourException : Exception method UnsupportedColourException (line 5) | public UnsupportedColourException(string code) FILE: src/Domain/ValueObjects/Colour.cs class Colour (line 3) | public class Colour(string code) : ValueObject method From (line 5) | public static Colour From(string code) method ToString (line 45) | public override string ToString() method GetEqualityComponents (line 65) | protected override IEnumerable GetEqualityComponents() FILE: src/Infrastructure/Data/ApplicationDbContext.cs class ApplicationDbContext (line 10) | public class ApplicationDbContext : IdentityDbContext, ... method ApplicationDbContext (line 12) | public ApplicationDbContext(DbContextOptions opt... method OnModelCreating (line 18) | protected override void OnModelCreating(ModelBuilder builder) FILE: src/Infrastructure/Data/ApplicationDbContextInitialiser.cs class InitialiserExtensions (line 11) | public static class InitialiserExtensions method InitialiseDatabaseAsync (line 13) | public static async Task InitialiseDatabaseAsync(this WebApplication app) class ApplicationDbContextInitialiser (line 24) | public class ApplicationDbContextInitialiser method ApplicationDbContextInitialiser (line 31) | public ApplicationDbContextInitialiser(ILogger method Configure (line 9) | public void Configure(EntityTypeBuilder builder) FILE: src/Infrastructure/Data/Configurations/TodoListConfiguration.cs class TodoListConfiguration (line 7) | public class TodoListConfiguration : IEntityTypeConfiguration method Configure (line 9) | public void Configure(EntityTypeBuilder builder) FILE: src/Infrastructure/Data/Interceptors/AuditableEntityInterceptor.cs class AuditableEntityInterceptor (line 9) | public class AuditableEntityInterceptor : SaveChangesInterceptor method AuditableEntityInterceptor (line 14) | public AuditableEntityInterceptor( method SavingChanges (line 22) | public override InterceptionResult SavingChanges(DbContextEventDa... method SavingChangesAsync (line 29) | public override ValueTask> SavingChangesAsync(... method UpdateEntities (line 36) | public void UpdateEntities(DbContext? context) class Extensions (line 57) | public static class Extensions method HasChangedOwnedEntities (line 59) | public static bool HasChangedOwnedEntities(this EntityEntry entry) => FILE: src/Infrastructure/Data/Interceptors/DispatchDomainEventsInterceptor.cs class DispatchDomainEventsInterceptor (line 8) | public class DispatchDomainEventsInterceptor : SaveChangesInterceptor method DispatchDomainEventsInterceptor (line 12) | public DispatchDomainEventsInterceptor(IMediator mediator) method SavingChanges (line 17) | public override InterceptionResult SavingChanges(DbContextEventDa... method SavingChangesAsync (line 25) | public override async ValueTask> SavingChanges... method DispatchDomainEvents (line 32) | public async Task DispatchDomainEvents(DbContext? context) FILE: src/Infrastructure/DependencyInjection.cs class DependencyInjection (line 14) | public static class DependencyInjection method AddInfrastructureServices (line 16) | public static void AddInfrastructureServices(this IHostApplicationBuil... FILE: src/Infrastructure/Identity/ApplicationUser.cs class ApplicationUser (line 5) | public class ApplicationUser : IdentityUser FILE: src/Infrastructure/Identity/IdentityResultExtensions.cs class IdentityResultExtensions (line 6) | public static class IdentityResultExtensions method ToApplicationResult (line 8) | public static Result ToApplicationResult(this IdentityResult result) FILE: src/Infrastructure/Identity/IdentityService.cs class IdentityService (line 9) | public class IdentityService : IIdentityService method IdentityService (line 15) | public IdentityService( method GetUserNameAsync (line 25) | public async Task GetUserNameAsync(string userId) method CreateUserAsync (line 32) | public async Task<(Result Result, string UserId)> CreateUserAsync(stri... method IsInRoleAsync (line 45) | public async Task IsInRoleAsync(string userId, string role) method AuthorizeAsync (line 52) | public async Task AuthorizeAsync(string userId, string policyName) method DeleteUserAsync (line 68) | public async Task DeleteUserAsync(string userId) method DeleteUserAsync (line 75) | public async Task DeleteUserAsync(ApplicationUser user) FILE: src/ServiceDefaults/Extensions.cs class Extensions (line 16) | public static class Extensions method AddServiceDefaults (line 18) | public static TBuilder AddServiceDefaults(this TBuilder buil... method ConfigureOpenTelemetry (line 44) | public static TBuilder ConfigureOpenTelemetry(this TBuilder ... method AddOpenTelemetryExporters (line 73) | private static TBuilder AddOpenTelemetryExporters(this TBuil... method AddDefaultHealthChecks (line 92) | public static TBuilder AddDefaultHealthChecks(this TBuilder ... method MapDefaultEndpoints (line 101) | public static WebApplication MapDefaultEndpoints(this WebApplication app) FILE: src/Shared/Services.cs class Services (line 3) | public static class Services FILE: src/Web/ClientApp-React/src/App.jsx class App (line 8) | class App extends Component { method render (line 11) | render() { FILE: src/Web/ClientApp-React/src/components/Counter.jsx function Counter (line 3) | function Counter() { FILE: src/Web/ClientApp-React/src/components/Home.jsx function Home (line 1) | function Home() { FILE: src/Web/ClientApp-React/src/components/Layout.jsx function Layout (line 3) | function Layout({ children }) { FILE: src/Web/ClientApp-React/src/components/NavMenu.jsx function AuthLinks (line 5) | function AuthLinks() { function NavMenu (line 26) | function NavMenu() { FILE: src/Web/ClientApp-React/src/components/ThemeContext.jsx constant STORAGE_KEY (line 3) | const STORAGE_KEY = 'picoColorScheme'; function useTheme (line 7) | function useTheme() { function ThemeProvider (line 11) | function ThemeProvider({ children }) { FILE: src/Web/ClientApp-React/src/components/ThemeToggle.jsx function ThemeToggle (line 12) | function ThemeToggle() { FILE: src/Web/ClientApp-React/src/components/Todo.jsx function Tasks (line 8) | function Tasks() { FILE: src/Web/ClientApp-React/src/components/Weather.jsx function Weather (line 4) | function Weather() { FILE: src/Web/ClientApp-React/src/components/api-authorization/AuthContext.jsx function AuthProvider (line 8) | function AuthProvider({ children }) { FILE: src/Web/ClientApp-React/src/components/api-authorization/LoginPage.jsx function LoginPage (line 5) | function LoginPage() { FILE: src/Web/ClientApp-React/src/components/api-authorization/ProtectedRoute.jsx function ProtectedRoute (line 4) | function ProtectedRoute({ children }) { FILE: src/Web/ClientApp-React/src/components/api-authorization/RegisterPage.jsx constant MIN_PASSWORD_LENGTH (line 5) | const MIN_PASSWORD_LENGTH = 6; function validateEmail (line 7) | function validateEmail(value) { function RegisterPage (line 11) | function RegisterPage() { FILE: src/Web/ClientApp/proxy.conf.js constant PROXY_CONFIG (line 7) | const PROXY_CONFIG = [ FILE: src/Web/ClientApp/src/api-authorization/auth.guard.ts class AuthGuard (line 10) | class AuthGuard implements CanActivate { method constructor (line 11) | constructor(private authService: AuthService, private router: Router) {} method canActivate (line 13) | canActivate(_route: ActivatedRouteSnapshot, state: RouterStateSnapshot... FILE: src/Web/ClientApp/src/api-authorization/auth.service.ts class AuthService (line 9) | class AuthService { method constructor (line 13) | constructor(private usersClient: UsersClient) {} method initialize (line 15) | initialize(): Observable { method login (line 23) | login(email: string, password: string): Observable { method register (line 30) | register(email: string, password: string): Observable { method logout (line 34) | logout(): Observable { FILE: src/Web/ClientApp/src/api-authorization/authorize.interceptor.ts class AuthorizeInterceptor (line 10) | class AuthorizeInterceptor implements HttpInterceptor { method constructor (line 11) | constructor(private router: Router) {} method intercept (line 13) | intercept(req: HttpRequest, next: HttpHandler): Observable= MIN_PASSWORD_LENG... method constructor (line 25) | constructor(private authService: AuthService, private router: Router, ... method register (line 27) | async register() { FILE: src/Web/ClientApp/src/app/app.component.ts class AppComponent (line 8) | class AppComponent { FILE: src/Web/ClientApp/src/app/app.module.ts function getApiBaseUrl (line 22) | function getApiBaseUrl(): string { class AppModule (line 61) | class AppModule { } FILE: src/Web/ClientApp/src/app/app.server.module.ts class AppServerModule (line 10) | class AppServerModule { } FILE: src/Web/ClientApp/src/app/counter/counter.component.ts class CounterComponent (line 8) | class CounterComponent { method incrementCounter (line 11) | public incrementCounter() { FILE: src/Web/ClientApp/src/app/fetch-data/fetch-data.component.ts class FetchDataComponent (line 9) | class FetchDataComponent { method constructor (line 12) | constructor(private client: WeatherForecastsClient, private cdr: Chang... FILE: src/Web/ClientApp/src/app/home/home.component.ts class HomeComponent (line 8) | class HomeComponent { FILE: src/Web/ClientApp/src/app/nav-menu/nav-menu.component.ts class NavMenuComponent (line 11) | class NavMenuComponent { method constructor (line 14) | constructor(private authService: AuthService, private router: Router) {} method logout (line 16) | logout(event: Event): void { FILE: src/Web/ClientApp/src/app/theme-toggle/theme-toggle.component.ts class ThemeToggleComponent (line 9) | class ThemeToggleComponent { method constructor (line 10) | constructor(public themeService: ThemeService) {} method cycle (line 28) | cycle(): void { FILE: src/Web/ClientApp/src/app/theme.service.ts type Theme (line 3) | type Theme = 'auto' | 'light' | 'dark'; class ThemeService (line 6) | class ThemeService { method constructor (line 11) | constructor() { method setTheme (line 18) | setTheme(value: Theme): void { method applyTheme (line 24) | private applyTheme(theme: Theme): void { FILE: src/Web/ClientApp/src/app/todo/todo.component.ts class TasksComponent (line 14) | class TasksComponent implements OnInit { method constructor (line 34) | constructor( method ngOnInit (line 41) | ngOnInit(): void { method remainingItems (line 55) | remainingItems(list: TodoListDto): number { method showNewListDialog (line 59) | showNewListDialog(): void { method newListCancelled (line 66) | newListCancelled(): void { method addList (line 72) | addList(): void { method showListOptionsDialog (line 98) | showListOptionsDialog(): void { method closeListOptionsDialog (line 106) | closeListOptionsDialog(): void { method updateListOptions (line 111) | updateListOptions(): void { method confirmDeleteList (line 123) | confirmDeleteList(): void { method closeDeleteListDialog (line 128) | closeDeleteListDialog(): void { method deleteListConfirmed (line 132) | deleteListConfirmed(): void { method showItemDetailsDialog (line 146) | showItemDetailsDialog(item: TodoItemDto): void { method closeItemDetailsDialog (line 152) | closeItemDetailsDialog(): void { method updateItemDetails (line 158) | updateItemDetails(): void { method startAddingItem (line 185) | startAddingItem(): void { method cancelNewItem (line 190) | cancelNewItem(): void { method commitNewItem (line 195) | commitNewItem(): void { method editItem (line 215) | editItem(item: TodoItemDto, inputId: string): void { method cancelEdit (line 221) | cancelEdit(): void { method updateItem (line 228) | updateItem(item: TodoItemDto): void { method deleteItem (line 257) | deleteItem(item: TodoItemDto): void { FILE: src/Web/ClientApp/src/app/weather/weather.component.ts class WeatherComponent (line 9) | class WeatherComponent { method constructor (line 14) | constructor(private client: WeatherForecastsClient, private cdr: Chang... FILE: src/Web/ClientApp/src/main.ts function getBaseUrl (line 7) | function getBaseUrl() { FILE: src/Web/DependencyInjection.cs class DependencyInjection (line 9) | public static class DependencyInjection method AddWebServices (line 11) | public static void AddWebServices(this IHostApplicationBuilder builder) method AddKeyVaultIfConfigured (line 39) | public static void AddKeyVaultIfConfigured(this IHostApplicationBuilde... FILE: src/Web/Endpoints/TodoItems.cs class TodoItems (line 11) | public class TodoItems : IEndpointGroup method Map (line 13) | public static void Map(RouteGroupBuilder groupBuilder) method GetTodoItemsWithPagination (line 24) | [EndpointSummary("Get Todo Items with Pagination")] method CreateTodoItem (line 35) | [EndpointSummary("Create a new Todo Item")] method UpdateTodoItem (line 44) | [EndpointSummary("Update a Todo Item")] method UpdateTodoItemDetail (line 56) | [EndpointSummary("Update Todo Item Details")] method DeleteTodoItem (line 67) | [EndpointSummary("Delete a Todo Item")] FILE: src/Web/Endpoints/TodoLists.cs class TodoLists (line 9) | public class TodoLists : IEndpointGroup method Map (line 11) | public static void Map(RouteGroupBuilder groupBuilder) method GetTodoLists (line 21) | [EndpointSummary("Get all Todo Lists")] method CreateTodoList (line 30) | [EndpointSummary("Create a new Todo List")] method UpdateTodoList (line 39) | [EndpointSummary("Update a Todo List")] method DeleteTodoList (line 50) | [EndpointSummary("Delete a Todo List")] FILE: src/Web/Endpoints/Users.cs class Users (line 8) | public class Users : IEndpointGroup method Map (line 10) | public static void Map(RouteGroupBuilder groupBuilder) method Logout (line 17) | [EndpointSummary("Log out")] FILE: src/Web/Endpoints/WeatherForecasts.cs class WeatherForecasts (line 6) | public class WeatherForecasts : IEndpointGroup method Map (line 8) | public static void Map(RouteGroupBuilder groupBuilder) method GetWeatherForecasts (line 15) | [EndpointSummary("Get Weather Forecasts")] FILE: src/Web/Infrastructure/ApiExceptionOperationTransformer.cs class ApiExceptionOperationTransformer (line 13) | internal sealed class ApiExceptionOperationTransformer : IOpenApiOperati... method TransformAsync (line 15) | public Task TransformAsync(OpenApiOperation operation, OpenApiOperatio... FILE: src/Web/Infrastructure/BearerSecuritySchemeTransformer.cs class BearerSecuritySchemeTransformer (line 12) | internal sealed class BearerSecuritySchemeTransformer(IAuthenticationSch... method TransformAsync (line 14) | public async Task TransformAsync(OpenApiDocument document, OpenApiDocu... FILE: src/Web/Infrastructure/EndpointRouteBuilderExtensions.cs class EndpointRouteBuilderExtensions (line 17) | public static class EndpointRouteBuilderExtensions method MapGet (line 20) | public static RouteHandlerBuilder MapGet(this IEndpointRouteBuilder bu... method MapPost (line 29) | public static RouteHandlerBuilder MapPost(this IEndpointRouteBuilder b... method MapPut (line 38) | public static RouteHandlerBuilder MapPut(this IEndpointRouteBuilder bu... method MapPatch (line 47) | public static RouteHandlerBuilder MapPatch(this IEndpointRouteBuilder ... method MapDelete (line 56) | public static RouteHandlerBuilder MapDelete(this IEndpointRouteBuilder... FILE: src/Web/Infrastructure/IEndpointGroup.cs type IEndpointGroup (line 10) | public interface IEndpointGroup method Map (line 18) | static abstract void Map(RouteGroupBuilder groupBuilder); FILE: src/Web/Infrastructure/IdentityApiOperationTransformer.cs class IdentityApiOperationTransformer (line 13) | internal sealed class IdentityApiOperationTransformer : IOpenApiOperatio... method TransformAsync (line 29) | public Task TransformAsync(OpenApiOperation operation, OpenApiOperatio... FILE: src/Web/Infrastructure/MethodInfoExtensions.cs class MethodInfoExtensions (line 5) | public static class MethodInfoExtensions method IsAnonymous (line 14) | public static bool IsAnonymous(this MethodInfo method) => method AnonymousMethod (line 22) | public static void AnonymousMethod(this IGuardClause guardClause, Dele... FILE: src/Web/Infrastructure/ProblemDetailsExceptionHandler.cs class ProblemDetailsExceptionHandler (line 13) | public class ProblemDetailsExceptionHandler : IExceptionHandler method TryHandleAsync (line 15) | public async ValueTask TryHandleAsync(HttpContext httpContext, E... FILE: src/Web/Infrastructure/WebApplicationExtensions.cs class WebApplicationExtensions (line 5) | public static class WebApplicationExtensions method MapEndpoints (line 12) | public static WebApplication MapEndpoints(this WebApplication app, Ass... FILE: src/Web/Services/CurrentUser.cs class CurrentUser (line 7) | public class CurrentUser : IUser method CurrentUser (line 11) | public CurrentUser(IHttpContextAccessor httpContextAccessor) FILE: templates/ca-use-case/FeatureName/Commands/CleanArchitectureUseCase/CleanArchitectureUseCase.cs type CleanArchitectureUseCaseCommand (line 6) | public record CleanArchitectureUseCaseCommand : IRequest class CleanArchitectureUseCaseCommandValidator (line 13) | public class CleanArchitectureUseCaseCommandValidator : AbstractValidato... method CleanArchitectureUseCaseCommandValidator (line 15) | public CleanArchitectureUseCaseCommandValidator() class CleanArchitectureUseCaseCommandHandler (line 21) | public class CleanArchitectureUseCaseCommandHandler : IRequestHandler Handle(CleanArchitectureUseCaseCommand ... method Handle (line 39) | public async Task Handle(CleanArchitectureUseCaseCommand request, Canc... FILE: templates/ca-use-case/FeatureName/Queries/CleanArchitectureUseCase/CleanArchitectureUseCase.cs type CleanArchitectureUseCaseQuery (line 6) | public record CleanArchitectureUseCaseQuery : IRequest class CleanArchitectureUseCaseQueryValidator (line 13) | public class CleanArchitectureUseCaseQueryValidator : AbstractValidator<... method CleanArchitectureUseCaseQueryValidator (line 15) | public CleanArchitectureUseCaseQueryValidator() class CleanArchitectureUseCaseQueryHandler (line 21) | public class CleanArchitectureUseCaseQueryHandler : IRequestHandler Handle(CleanArchitectureUseCaseQuery re... method Handle (line 39) | public async Task Handle(CleanArchitectureUseCaseQuery request, Cancel... FILE: tests/Application.FunctionalTests/FunctionalTestSetup.cs class FunctionalTestSetup (line 5) | [SetUpFixture] method OneTimeSetUp (line 14) | [OneTimeSetUp] method OneTimeTearDown (line 48) | [OneTimeTearDown] FILE: tests/Application.FunctionalTests/Infrastructure/DatabaseResetter.cs class DatabaseResetter (line 13) | internal sealed class DatabaseResetter : IAsyncDisposable method DatabaseResetter (line 18) | private DatabaseResetter(DbConnection connection, Respawner respawner) method CreateAsync (line 24) | public static async Task CreateAsync(string connecti... method ResetAsync (line 40) | public async Task ResetAsync() method DisposeAsync (line 47) | public async ValueTask DisposeAsync() => await _connection.DisposeAsyn... FILE: tests/Application.FunctionalTests/Infrastructure/TestApp.cs class TestApp (line 11) | public static class TestApp method SendAsync (line 16) | public static async Task SendAsync(IRequest _userId; method GetRoles (line 36) | public static List? GetRoles() => _roles; method RunAsDefaultUserAsync (line 38) | public static async Task RunAsDefaultUserAsync() method RunAsAdministratorAsync (line 43) | public static async Task RunAsAdministratorAsync() method RunAsUserAsync (line 48) | public static async Task RunAsUserAsync(string userName, strin... method ResetState (line 82) | public static async Task ResetState() method FindAsync (line 93) | public static async Task FindAsync(params object[] ... method AddAsync (line 103) | public static async Task AddAsync(TEntity entity) method CountAsync (line 115) | public static async Task CountAsync() where TEntity : class FILE: tests/Application.FunctionalTests/Infrastructure/TestBase.cs class TestBase (line 3) | public abstract class TestBase method SetUp (line 5) | [SetUp] FILE: tests/Application.FunctionalTests/Infrastructure/WebApiFactory.cs class WebApiFactory (line 10) | public class WebApiFactory(string connectionString) : WebApplicationFact... method ConfigureWebHost (line 12) | protected override void ConfigureWebHost(IWebHostBuilder builder) FILE: tests/Application.FunctionalTests/TodoItems/Commands/CreateTodoItemTests.cs class CreateTodoItemTests (line 8) | public class CreateTodoItemTests : TestBase method ShouldRequireMinimumFields (line 10) | [Test] method ShouldCreateTodoItem (line 18) | [Test] FILE: tests/Application.FunctionalTests/TodoItems/Commands/DeleteTodoItemTests.cs class DeleteTodoItemTests (line 8) | public class DeleteTodoItemTests : TestBase method ShouldRequireValidTodoItemId (line 10) | [Test] method ShouldDeleteTodoItem (line 18) | [Test] FILE: tests/Application.FunctionalTests/TodoItems/Commands/UpdateTodoItemDetailTests.cs class UpdateTodoItemDetailTests (line 10) | public class UpdateTodoItemDetailTests : TestBase method ShouldRequireValidTodoItemId (line 12) | [Test] method ShouldUpdateTodoItem (line 20) | [Test] FILE: tests/Application.FunctionalTests/TodoItems/Commands/UpdateTodoItemTests.cs class UpdateTodoItemTests (line 8) | public class UpdateTodoItemTests : TestBase method ShouldRequireValidTodoItemId (line 10) | [Test] method ShouldUpdateTodoItem (line 17) | [Test] FILE: tests/Application.FunctionalTests/TodoLists/Commands/CreateTodoListTests.cs class CreateTodoListTests (line 7) | public class CreateTodoListTests : TestBase method ShouldRequireMinimumFields (line 9) | [Test] method ShouldRequireUniqueTitle (line 16) | [Test] method ShouldCreateTodoList (line 32) | [Test] FILE: tests/Application.FunctionalTests/TodoLists/Commands/DeleteTodoListTests.cs class DeleteTodoListTests (line 7) | public class DeleteTodoListTests : TestBase method ShouldRequireValidTodoListId (line 9) | [Test] method ShouldDeleteTodoList (line 16) | [Test] FILE: tests/Application.FunctionalTests/TodoLists/Commands/PurgeTodoListsTests.cs class PurgeTodoListsTests (line 9) | public class PurgeTodoListsTests : TestBase method ShouldDenyAnonymousUser (line 11) | [Test] method ShouldDenyNonAdministrator (line 25) | [Test] method ShouldAllowAdministrator (line 37) | [Test] method ShouldDeleteAllLists (line 50) | [Test] FILE: tests/Application.FunctionalTests/TodoLists/Commands/UpdateTodoListTests.cs class UpdateTodoListTests (line 8) | public class UpdateTodoListTests : TestBase method ShouldRequireValidTodoListId (line 10) | [Test] method ShouldRequireUniqueTitle (line 17) | [Test] method ShouldUpdateTodoList (line 42) | [Test] FILE: tests/Application.FunctionalTests/TodoLists/Queries/GetTodosTests.cs class GetTodosTests (line 7) | public class GetTodosTests : TestBase method ShouldReturnPriorityLevels (line 9) | [Test] method ShouldReturnAllListsAndItems (line 21) | [Test] method ShouldDenyAnonymousUser (line 50) | [Test] FILE: tests/Application.UnitTests/Common/Behaviours/RequestLoggerTests.cs class RequestLoggerTests (line 10) | public class RequestLoggerTests method Setup (line 16) | [SetUp] method ShouldCallGetUserNameAsyncOnceIfAuthenticated (line 24) | [Test] method ShouldNotCallGetUserNameAsyncOnceIfUnauthenticated (line 36) | [Test] FILE: tests/Application.UnitTests/Common/Exceptions/ValidationExceptionTests.cs class ValidationExceptionTests (line 8) | public class ValidationExceptionTests method DefaultConstructorCreatesAnEmptyErrorDictionary (line 10) | [Test] method SingleValidationFailureCreatesASingleElementErrorDictionary (line 18) | [Test] method MulitpleValidationFailureForMultiplePropertiesCreatesAMultipleElementErrorDictionaryEachWithMultipleValues (line 32) | [Test] FILE: tests/Application.UnitTests/Common/Mappings/MappingTests.cs class MappingTests (line 13) | public class MappingTests method OneTimeSetUp (line 19) | [OneTimeSetUp] method ShouldHaveValidConfiguration (line 32) | [Test] method ShouldSupportMappingFromSourceToDestination (line 38) | [Test] method GetInstanceOf (line 51) | private static object GetInstanceOf(Type type) method OneTimeTearDown (line 61) | [OneTimeTearDown] FILE: tests/Application.UnitTests/Common/Models/PaginatedListTests.cs class PaginatedListTests (line 7) | public class PaginatedListTests method HasPreviousPage_ShouldBeFalse_WhenOnFirstPage (line 9) | [Test] method HasPreviousPage_ShouldBeTrue_WhenOnSecondPage (line 17) | [Test] method HasPreviousPage_ShouldBeTrue_WhenOnePageBeyondLastPage (line 25) | [Test] method HasPreviousPage_ShouldBeFalse_WhenTwoPagesOrMoreBeyondLastPage (line 33) | [Test] method HasNextPage_ShouldBeFalse_WhenOnLastPage (line 41) | [Test] method HasNextPage_ShouldBeTrue_WhenNotOnLastPage (line 49) | [Test] FILE: tests/Domain.UnitTests/ValueObjects/ColourTests.cs class ColourTests (line 8) | public class ColourTests method ShouldReturnCorrectColourCode (line 10) | [Test] method ToStringReturnsCode (line 20) | [Test] method ShouldPerformImplicitConversionToColourCodeString (line 28) | [Test] method ShouldPerformExplicitConversionGivenSupportedColourCode (line 36) | [Test] method ShouldThrowUnsupportedColourExceptionGivenNotSupportedColourCode (line 44) | [Test] method ShouldBeComparableWithOperators (line 50) | [Test] FILE: tests/TestAppHost/Program.cs class Program (line 5) | public class Program method Main (line 7) | public static void Main(string[] args) FILE: tests/Web.AcceptanceTests/AspireSetup.cs class AspireSetup (line 5) | [SetUpFixture] method OneTimeSetup (line 13) | [OneTimeSetUp] method OneTimeTearDown (line 55) | [OneTimeTearDown] FILE: tests/Web.AcceptanceTests/Pages/BasePage.cs class BasePage (line 3) | public abstract class BasePage(IPage page) method GotoAsync (line 11) | public Task GotoAsync() => Page.GotoAsync(PagePath); FILE: tests/Web.AcceptanceTests/Pages/CounterPage.cs class CounterPage (line 3) | public class CounterPage(IPage page) : BasePage(page) method AssertHeading (line 7) | public Task AssertHeading(string text) method AssertCurrentCount (line 10) | public Task AssertCurrentCount(int count) method ClickIncrement (line 13) | public Task ClickIncrement() FILE: tests/Web.AcceptanceTests/Pages/HomePage.cs class HomePage (line 3) | public class HomePage(IPage page) : BasePage(page) method AssertHeading (line 7) | public Task AssertHeading(string text) FILE: tests/Web.AcceptanceTests/Pages/LoginPage.cs class LoginPage (line 3) | public class LoginPage(IPage page) : BasePage(page) method SetEmail (line 7) | public Task SetEmail(string email) method SetPassword (line 10) | public Task SetPassword(string password) method ClickLogin (line 13) | public Task ClickLogin() method LogoutButtonText (line 16) | public Task LogoutButtonText() method AssertErrorVisible (line 19) | public Task AssertErrorVisible() FILE: tests/Web.AcceptanceTests/Pages/WeatherPage.cs class WeatherPage (line 3) | public class WeatherPage(IPage page) : BasePage(page) method AssertHeading (line 7) | public Task AssertHeading(string text) method AssertTableVisible (line 10) | public Task AssertTableVisible() method AssertRowCount (line 13) | public Task AssertRowCount(int count) FILE: tests/Web.AcceptanceTests/PlaywrightSetup.cs class PlaywrightSetup (line 5) | [SetUpFixture] method OneTimeSetUp (line 13) | [OneTimeSetUp] method OneTimeTearDown (line 27) | [OneTimeTearDown] FILE: tests/Web.AcceptanceTests/StepDefinitions/CounterStepDefinitions.cs class CounterStepDefinitions (line 3) | [Binding] method BeforeCounterFeature (line 6) | [BeforeFeature("Counter")] method AfterCounterFeature (line 15) | [AfterFeature] method GivenAUserVisitsTheCounterPage (line 22) | [Given("a user visits the counter page")] method ThenTheCounterHeadingIs (line 25) | [Then("the counter heading is {string}")] method ThenTheCurrentCountIs (line 28) | [Then("the current count is {int}")] method WhenTheUserClicksIncrement (line 31) | [When("the user clicks increment")] FILE: tests/Web.AcceptanceTests/StepDefinitions/HomeStepDefinitions.cs class HomeStepDefinitions (line 3) | [Binding] method BeforeHomeFeature (line 6) | [BeforeFeature("Home")] method AfterHomeFeature (line 15) | [AfterFeature] method GivenAUserVisitsTheHomePage (line 22) | [Given("a user visits the home page")] method ThenTheHeadingIsVisible (line 25) | [Then("the heading {string} is visible")] FILE: tests/Web.AcceptanceTests/StepDefinitions/LoginStepDefinitions.cs class LoginStepDefinitions (line 3) | [Binding] method BeforeLoginFeature (line 6) | [BeforeFeature("Login")] method AfterLoginFeature (line 15) | [AfterFeature] method GivenALoggedOutUser (line 22) | [Given("a logged out user")] method TheUserLogsInWithValidCredentials (line 25) | [When("the user logs in with valid credentials")] method TheyLogInSuccessfully (line 33) | [Then("they log in successfully")] method TheUserLogsInWithInvalidCredentials (line 42) | [When("the user logs in with invalid credentials")] method AnErrorIsDisplayed (line 50) | [Then("an error is displayed")] FILE: tests/Web.AcceptanceTests/StepDefinitions/WeatherStepDefinitions.cs class WeatherStepDefinitions (line 3) | [Binding] method BeforeWeatherFeature (line 6) | [BeforeFeature("Weather")] method AfterWeatherFeature (line 23) | [AfterFeature] method GivenAnAuthenticatedUserVisitsTheWeatherPage (line 30) | [Given("an authenticated user visits the weather page")] method ThenTheWeatherForecastHeadingIs (line 33) | [Then("the weather forecast heading is {string}")] method ThenTheWeatherForecastTableIsDisplayed (line 36) | [Then("the weather forecast table is displayed")] method ThenWeatherForecastsAreShown (line 39) | [Then("{int} weather forecasts are shown")]