integration tests
Some checks failed
CI / lint-typecheck (pull_request) Failing after 4m51s
CI / tests (pull_request) Has been skipped
CI / contract-tests (pull_request) Has been skipped
CI / e2e-tests (pull_request) Has been skipped
CI / comment-pr (pull_request) Has been skipped
CI / commit-types (pull_request) Has been skipped

This commit is contained in:
2026-01-24 01:13:49 +01:00
parent 9bb6b228f1
commit 9ccecbf3bb
25 changed files with 895 additions and 2688 deletions

View File

@@ -11,8 +11,9 @@ import {
LeagueAccessedEvent,
LeagueRosterAccessedEvent,
} from '../../core/leagues/application/ports/LeagueEventPublisher';
import { EventPublisher, DomainEvent } from '../../core/shared/ports/EventPublisher';
export class InMemoryEventPublisher implements DashboardEventPublisher, LeagueEventPublisher {
export class InMemoryEventPublisher implements DashboardEventPublisher, LeagueEventPublisher, EventPublisher {
private dashboardAccessedEvents: DashboardAccessedEvent[] = [];
private dashboardErrorEvents: DashboardErrorEvent[] = [];
private leagueCreatedEvents: LeagueCreatedEvent[] = [];
@@ -20,6 +21,7 @@ export class InMemoryEventPublisher implements DashboardEventPublisher, LeagueEv
private leagueDeletedEvents: LeagueDeletedEvent[] = [];
private leagueAccessedEvents: LeagueAccessedEvent[] = [];
private leagueRosterAccessedEvents: LeagueRosterAccessedEvent[] = [];
private events: DomainEvent[] = [];
private shouldFail: boolean = false;
async publishDashboardAccessed(event: DashboardAccessedEvent): Promise<void> {
@@ -101,10 +103,20 @@ export class InMemoryEventPublisher implements DashboardEventPublisher, LeagueEv
this.leagueDeletedEvents = [];
this.leagueAccessedEvents = [];
this.leagueRosterAccessedEvents = [];
this.events = [];
this.shouldFail = false;
}
setShouldFail(shouldFail: boolean): void {
this.shouldFail = shouldFail;
}
async publish(event: DomainEvent): Promise<void> {
if (this.shouldFail) throw new Error('Event publisher failed');
this.events.push(event);
}
getEvents(): DomainEvent[] {
return [...this.events];
}
}