seed data
This commit is contained in:
@@ -16,13 +16,18 @@ export type RacingSeedData = {
|
||||
};
|
||||
|
||||
export class InMemoryFeedRepository implements IFeedRepository {
|
||||
private readonly feedEvents: FeedItem[];
|
||||
private readonly friendships: Friendship[];
|
||||
private feedEvents: FeedItem[];
|
||||
private friendships: Friendship[];
|
||||
private readonly logger: Logger;
|
||||
|
||||
constructor(logger: Logger, seed: RacingSeedData) {
|
||||
constructor(logger: Logger, seed?: RacingSeedData) {
|
||||
this.logger = logger;
|
||||
this.logger.info('InMemoryFeedRepository initialized.');
|
||||
this.feedEvents = seed?.feedEvents ?? [];
|
||||
this.friendships = seed?.friendships ?? [];
|
||||
}
|
||||
|
||||
seed(seed: RacingSeedData): void {
|
||||
this.feedEvents = seed.feedEvents;
|
||||
this.friendships = seed.friendships;
|
||||
}
|
||||
@@ -72,13 +77,18 @@ export class InMemoryFeedRepository implements IFeedRepository {
|
||||
}
|
||||
|
||||
export class InMemorySocialGraphRepository implements ISocialGraphRepository {
|
||||
private readonly friendships: Friendship[];
|
||||
private readonly driversById: Map<string, Driver>;
|
||||
private friendships: Friendship[];
|
||||
private driversById: Map<string, Driver>;
|
||||
private readonly logger: Logger;
|
||||
|
||||
constructor(logger: Logger, seed: RacingSeedData) {
|
||||
constructor(logger: Logger, seed?: RacingSeedData) {
|
||||
this.logger = logger;
|
||||
this.logger.info('InMemorySocialGraphRepository initialized.');
|
||||
this.friendships = seed?.friendships ?? [];
|
||||
this.driversById = new Map((seed?.drivers ?? []).map((d) => [d.id, d]));
|
||||
}
|
||||
|
||||
seed(seed: RacingSeedData): void {
|
||||
this.friendships = seed.friendships;
|
||||
this.driversById = new Map(seed.drivers.map((d) => [d.id, d]));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user