fix seeds

This commit is contained in:
2025-12-27 01:53:36 +01:00
parent 901fb1ac83
commit 15435c93fc
12 changed files with 259 additions and 200 deletions

View File

@@ -6,6 +6,7 @@ import { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'
import { Result as RaceResult } from '@core/racing/domain/entities/result/Result';
import { Standing } from '@core/racing/domain/entities/Standing';
import { Team } from '@core/racing/domain/entities/Team';
import { Track } from '@core/racing/domain/entities/Track';
import type { TeamMembership } from '@core/racing/domain/types/TeamMembership';
import type { FeedItem } from '@core/social/domain/types/FeedItem';
import { RacingDriverFactory } from './RacingDriverFactory';
@@ -17,6 +18,7 @@ import { RacingRaceFactory } from './RacingRaceFactory';
import { RacingResultFactory } from './RacingResultFactory';
import { RacingStandingFactory } from './RacingStandingFactory';
import { RacingTeamFactory } from './RacingTeamFactory';
import { RacingTrackFactory } from './RacingTrackFactory';
export type Friendship = {
driverId: string;
@@ -33,6 +35,7 @@ export type RacingSeed = {
raceRegistrations: RaceRegistration[];
teams: Team[];
teamMemberships: TeamMembership[];
tracks: Track[];
friendships: Friendship[];
feedEvents: FeedItem[];
};
@@ -45,7 +48,7 @@ export type RacingSeedOptions = {
export const racingSeedDefaults: Readonly<
Required<RacingSeedOptions>
> = {
driverCount: 32,
driverCount: 100,
baseDate: new Date('2025-01-15T12:00:00.000Z'),
};
@@ -60,23 +63,25 @@ class RacingSeedFactory {
create(): RacingSeed {
const driverFactory = new RacingDriverFactory(this.driverCount, this.baseDate);
const leagueFactory = new RacingLeagueFactory(this.baseDate);
const trackFactory = new RacingTrackFactory();
const raceFactory = new RacingRaceFactory(this.baseDate);
const resultFactory = new RacingResultFactory();
const standingFactory = new RacingStandingFactory();
const membershipFactory = new RacingMembershipFactory(this.baseDate);
const teamFactory = new RacingTeamFactory(this.baseDate);
const friendshipFactory = new RacingFriendshipFactory();
const feedFactory = new RacingFeedFactory(this.baseDate);
const drivers = driverFactory.create();
const tracks = trackFactory.create();
const leagueFactory = new RacingLeagueFactory(this.baseDate, drivers);
const leagues = leagueFactory.create();
const races = raceFactory.create(leagues);
const teamFactory = new RacingTeamFactory(this.baseDate, drivers, leagues);
const teams = teamFactory.createTeams();
const races = raceFactory.create(leagues, tracks);
const results = resultFactory.create(drivers, races);
const standings = standingFactory.create(leagues, races, results);
const leagueMemberships = membershipFactory.createLeagueMemberships(drivers, leagues);
const raceRegistrations = membershipFactory.createRaceRegistrations(races);
const teams = teamFactory.createTeams();
const teamMemberships = teamFactory.createTeamMemberships(drivers, teams);
const friendships = friendshipFactory.create(drivers);
const feedEvents = feedFactory.create(drivers, friendships, races, leagues);
@@ -91,6 +96,7 @@ class RacingSeedFactory {
raceRegistrations,
teams,
teamMemberships,
tracks,
friendships,
feedEvents,
};