wip league admin tools

This commit is contained in:
2025-12-28 12:04:12 +01:00
parent 5dc8c2399c
commit 6edf12fda8
401 changed files with 15365 additions and 6047 deletions

View File

@@ -193,7 +193,7 @@ describe('CreateSeasonForLeagueUseCase', () => {
expect(season.leagueId).toBe('league-1');
expect(season.gameId).toBe('iracing');
expect(season.name).toBe('Season from Config');
expect(season.status).toBe('planned');
expect(season.status.toString()).toBe('planned');
// Schedule is optional when timings lack seasonStartDate / raceStartTime.
expect(season.schedule).toBeUndefined();
@@ -244,7 +244,7 @@ describe('CreateSeasonForLeagueUseCase', () => {
expect(season.id).not.toBe(sourceSeason.id);
expect(season.leagueId).toBe(sourceSeason.leagueId);
expect(season.gameId).toBe(sourceSeason.gameId);
expect(season.status).toBe('planned');
expect(season.status.toString()).toBe('planned');
expect(season.maxDrivers).toBe(sourceSeason.maxDrivers);
expect(season.schedule).toBe(sourceSeason.schedule);
expect(season.scoringConfig).toBe(sourceSeason.scoringConfig);
@@ -419,7 +419,7 @@ describe('GetSeasonDetailsUseCase', () => {
expect(payload.season.leagueId).toBe('league-1');
expect(payload.season.gameId).toBe('iracing');
expect(payload.season.name).toBe('Detailed Season');
expect(payload.season.status).toBe('planned');
expect(payload.season.status.toString()).toBe('planned');
expect(payload.season.maxDrivers).toBe(24);
});
@@ -512,7 +512,7 @@ describe('ManageSeasonLifecycleUseCase', () => {
const activatePayloadRaw = (output.present as ReturnType<typeof vi.fn>).mock.calls[0]?.[0];
expect(activatePayloadRaw).toBeDefined();
const activatePayload = activatePayloadRaw as ManageSeasonLifecycleResult;
expect(activatePayload.season.status).toBe('active');
expect(activatePayload.season.status.toString()).toBe('active');
const completeCommand: ManageSeasonLifecycleCommand = {
leagueId: 'league-1',
@@ -526,7 +526,7 @@ describe('ManageSeasonLifecycleUseCase', () => {
const completePayloadRaw = (output.present as ReturnType<typeof vi.fn>).mock.calls[1]?.[0];
expect(completePayloadRaw).toBeDefined();
const completePayload = completePayloadRaw as ManageSeasonLifecycleResult;
expect(completePayload.season.status).toBe('completed');
expect(completePayload.season.status.toString()).toBe('completed');
const archiveCommand: ManageSeasonLifecycleCommand = {
leagueId: 'league-1',
@@ -540,9 +540,9 @@ describe('ManageSeasonLifecycleUseCase', () => {
const archivePayloadRaw = (output.present as ReturnType<typeof vi.fn>).mock.calls[2]?.[0];
expect(archivePayloadRaw).toBeDefined();
const archivePayload = archivePayloadRaw as ManageSeasonLifecycleResult;
expect(archivePayload.season.status).toBe('archived');
expect(archivePayload.season.status.toString()).toBe('archived');
expect(currentSeason.status).toBe('archived');
expect(currentSeason.status.toString()).toBe('archived');
});
it('returns INVALID_LIFECYCLE_TRANSITION for invalid transitions and does not call output', async () => {