Move RepositoryHolder into test helpers, as it's shared across shared tests

This commit is contained in:
2025-11-11 10:59:20 -08:00
parent 53e120cd1e
commit c43201b867
3 changed files with 11 additions and 16 deletions

View File

@@ -4,14 +4,9 @@ import { IParkingStructure } from "../../../entities/ParkingRepositoryEntities";
import { ParkingGetterSetterRepository } from "../ParkingGetterSetterRepository";
import { RedisParkingRepository } from "../RedisParkingRepository";
import { HistoricalParkingAverageFilterArguments } from "../ParkingGetterRepository";
import { RepositoryHolder } from "../../../../testHelpers/RepositoryHolder";
interface RepositoryHolder {
name: string;
factory(): Promise<ParkingGetterSetterRepository>;
teardown(): Promise<void>;
}
class InMemoryParkingRepositoryHolder implements RepositoryHolder {
class InMemoryParkingRepositoryHolder implements RepositoryHolder<ParkingGetterSetterRepository> {
name = 'InMemoryParkingRepository';
factory = async () => {
return new InMemoryParkingRepository();
@@ -19,7 +14,7 @@ class InMemoryParkingRepositoryHolder implements RepositoryHolder {
teardown = async () => {};
}
class RedisParkingRepositoryHolder implements RepositoryHolder {
class RedisParkingRepositoryHolder implements RepositoryHolder<ParkingGetterSetterRepository> {
repo: RedisParkingRepository | undefined;
name = 'RedisParkingRepository';

View File

@@ -11,14 +11,9 @@ import {
generateMockShuttles,
generateMockStops,
} from "../../../../testHelpers/mockDataGenerators";
import { RepositoryHolder } from "../../../../testHelpers/RepositoryHolder";
interface RepositoryHolder {
name: string;
factory(): Promise<ShuttleGetterSetterRepository>;
teardown(): Promise<void>;
}
class UnoptimizedInMemoryShuttleRepositoryHolder implements RepositoryHolder {
class UnoptimizedInMemoryShuttleRepositoryHolder implements RepositoryHolder<ShuttleGetterSetterRepository> {
name = 'UnoptimizedInMemoryShuttleRepository';
factory = async () => {
return new UnoptimizedInMemoryShuttleRepository();
@@ -26,7 +21,7 @@ class UnoptimizedInMemoryShuttleRepositoryHolder implements RepositoryHolder {
teardown = async () => {};
}
class RedisShuttleRepositoryHolder implements RepositoryHolder {
class RedisShuttleRepositoryHolder implements RepositoryHolder<ShuttleGetterSetterRepository> {
repo: RedisShuttleRepository | undefined;
name = 'RedisShuttleRepository';

View File

@@ -0,0 +1,5 @@
export interface RepositoryHolder<T> {
name: string;
factory(): Promise<T>;
teardown(): Promise<void>;
}