From 687fe0d826c8778fe114bd038f0361b4fb9950ce Mon Sep 17 00:00:00 2001 From: Brendan Chen Date: Thu, 27 Mar 2025 09:33:37 -0700 Subject: [PATCH] finish the rename for the data loaders --- src/index.ts | 8 ++++---- ...sitoryLoader.ts => ApiBasedShuttleRepositoryLoader.ts} | 4 ++-- .../{RepositoryLoader.ts => ShuttleRepositoryLoader.ts} | 2 +- ...yLoader.ts => TimedApiBasedShuttleRepositoryLoader.ts} | 4 ++-- src/loaders/{loadTestData.ts => loadShuttleTestData.ts} | 2 +- test/loaders/ApiBasedRepositoryLoaderTests.test.ts | 6 +++--- test/loaders/TimedApiBasedRepositoryLoaderTests.test.ts | 6 +++--- 7 files changed, 16 insertions(+), 16 deletions(-) rename src/loaders/{ApiBasedRepositoryLoader.ts => ApiBasedShuttleRepositoryLoader.ts} (98%) rename src/loaders/{RepositoryLoader.ts => ShuttleRepositoryLoader.ts} (94%) rename src/loaders/{TimedApiBasedRepositoryLoader.ts => TimedApiBasedShuttleRepositoryLoader.ts} (91%) rename src/loaders/{loadTestData.ts => loadShuttleTestData.ts} (99%) diff --git a/src/index.ts b/src/index.ts index 99e0f37..c2d04e4 100644 --- a/src/index.ts +++ b/src/index.ts @@ -4,9 +4,9 @@ import { startStandaloneServer } from "@apollo/server/standalone"; import { MergedResolvers } from "./MergedResolvers"; import { ServerContext } from "./ServerContext"; import { UnoptimizedInMemoryShuttleRepository } from "./repositories/UnoptimizedInMemoryShuttleRepository"; -import { TimedApiBasedRepositoryLoader } from "./loaders/TimedApiBasedRepositoryLoader"; +import { TimedApiBasedShuttleRepositoryLoader } from "./loaders/TimedApiBasedShuttleRepositoryLoader"; import { ETANotificationScheduler } from "./notifications/schedulers/ETANotificationScheduler"; -import { loadTestData } from "./loaders/loadTestData"; +import { loadShuttleTestData } from "./loaders/loadShuttleTestData"; import { AppleNotificationSender } from "./notifications/senders/AppleNotificationSender"; const typeDefs = readFileSync("./schema.graphqls", "utf8"); @@ -22,11 +22,11 @@ async function main() { let notificationService: ETANotificationScheduler; if (process.argv.length > 2 && process.argv[2] == "integration-testing") { console.log("Using integration testing setup") - await loadTestData(repository); + await loadShuttleTestData(repository); const appleNotificationSender = new AppleNotificationSender(false); notificationService = new ETANotificationScheduler(repository, appleNotificationSender); } else { - const repositoryDataUpdater = new TimedApiBasedRepositoryLoader( + const repositoryDataUpdater = new TimedApiBasedShuttleRepositoryLoader( repository ); await repositoryDataUpdater.start(); diff --git a/src/loaders/ApiBasedRepositoryLoader.ts b/src/loaders/ApiBasedShuttleRepositoryLoader.ts similarity index 98% rename from src/loaders/ApiBasedRepositoryLoader.ts rename to src/loaders/ApiBasedShuttleRepositoryLoader.ts index aa4b078..b8a6285 100644 --- a/src/loaders/ApiBasedRepositoryLoader.ts +++ b/src/loaders/ApiBasedShuttleRepositoryLoader.ts @@ -1,6 +1,6 @@ import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository"; import { IEntityWithId, IEta, IRoute, IShuttle, IStop, ISystem } from "../entities/entities"; -import { RepositoryLoader } from "./RepositoryLoader"; +import { ShuttleRepositoryLoader } from "./ShuttleRepositoryLoader"; export class ApiResponseError extends Error { constructor(message: string) { @@ -14,7 +14,7 @@ export class ApiResponseError extends Error { * Passio Go API. Supports automatic pruning of all data types * which inherit from `IEntityWithId`. */ -export class ApiBasedRepositoryLoader implements RepositoryLoader { +export class ApiBasedShuttleRepositoryLoader implements ShuttleRepositoryLoader { supportedSystemIds = ["263"]; baseUrl = "https://passiogo.com/mapGetData.php"; diff --git a/src/loaders/RepositoryLoader.ts b/src/loaders/ShuttleRepositoryLoader.ts similarity index 94% rename from src/loaders/RepositoryLoader.ts rename to src/loaders/ShuttleRepositoryLoader.ts index 5e34c49..9ffa137 100644 --- a/src/loaders/RepositoryLoader.ts +++ b/src/loaders/ShuttleRepositoryLoader.ts @@ -1,4 +1,4 @@ -export interface RepositoryLoader { +export interface ShuttleRepositoryLoader { fetchAndUpdateSystemData(): Promise; fetchAndUpdateRouteDataForExistingSystemsInRepository(): Promise; fetchAndUpdateRouteDataForSystemId(systemId: string): Promise; diff --git a/src/loaders/TimedApiBasedRepositoryLoader.ts b/src/loaders/TimedApiBasedShuttleRepositoryLoader.ts similarity index 91% rename from src/loaders/TimedApiBasedRepositoryLoader.ts rename to src/loaders/TimedApiBasedShuttleRepositoryLoader.ts index 8c830ba..1d15273 100644 --- a/src/loaders/TimedApiBasedRepositoryLoader.ts +++ b/src/loaders/TimedApiBasedShuttleRepositoryLoader.ts @@ -1,5 +1,5 @@ import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository"; -import { ApiBasedRepositoryLoader } from "./ApiBasedRepositoryLoader"; +import { ApiBasedShuttleRepositoryLoader } from "./ApiBasedShuttleRepositoryLoader"; // Ideas to break this into smaller pieces in the future: // Have one repository data loader running for each supported system @@ -15,7 +15,7 @@ import { ApiBasedRepositoryLoader } from "./ApiBasedRepositoryLoader"; // - OrderedStops: reload every few minutes // - Systems: reload once a day -export class TimedApiBasedRepositoryLoader extends ApiBasedRepositoryLoader { +export class TimedApiBasedShuttleRepositoryLoader extends ApiBasedShuttleRepositoryLoader { private shouldBeRunning: boolean = false; private timer: any; diff --git a/src/loaders/loadTestData.ts b/src/loaders/loadShuttleTestData.ts similarity index 99% rename from src/loaders/loadTestData.ts rename to src/loaders/loadShuttleTestData.ts index 013379a..76cce74 100644 --- a/src/loaders/loadTestData.ts +++ b/src/loaders/loadShuttleTestData.ts @@ -4454,7 +4454,7 @@ const etas: IEta[] = [ } ]; -export async function loadTestData(repository: ShuttleGetterSetterRepository) { +export async function loadShuttleTestData(repository: ShuttleGetterSetterRepository) { await Promise.all(systems.map(async (system) => { await repository.addOrUpdateSystem(system); })); diff --git a/test/loaders/ApiBasedRepositoryLoaderTests.test.ts b/test/loaders/ApiBasedRepositoryLoaderTests.test.ts index 8e857c8..cead5ec 100644 --- a/test/loaders/ApiBasedRepositoryLoaderTests.test.ts +++ b/test/loaders/ApiBasedRepositoryLoaderTests.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, expect, it, jest, test } from "@jest/globals"; -import { ApiBasedRepositoryLoader, ApiResponseError } from "../../src/loaders/ApiBasedRepositoryLoader"; +import { ApiBasedShuttleRepositoryLoader, ApiResponseError } from "../../src/loaders/ApiBasedShuttleRepositoryLoader"; import { UnoptimizedInMemoryShuttleRepository } from "../../src/repositories/UnoptimizedInMemoryShuttleRepository"; import { fetchSystemDataSuccessfulResponse } from "../jsonSnapshots/fetchSystemData/fetchSystemDataSuccessfulResponse"; import { fetchSystemDataFailedResponse } from "../jsonSnapshots/fetchSystemData/fetchSystemDataFailedResponse"; @@ -23,10 +23,10 @@ async function assertAsyncCallbackThrowsApiResponseError(callback: () => Promise } describe("ApiBasedRepositoryLoader", () => { - let loader: ApiBasedRepositoryLoader; + let loader: ApiBasedShuttleRepositoryLoader; beforeEach(() => { - loader = new ApiBasedRepositoryLoader(new UnoptimizedInMemoryShuttleRepository()); + loader = new ApiBasedShuttleRepositoryLoader(new UnoptimizedInMemoryShuttleRepository()); resetGlobalFetchMockJson(); }); diff --git a/test/loaders/TimedApiBasedRepositoryLoaderTests.test.ts b/test/loaders/TimedApiBasedRepositoryLoaderTests.test.ts index 602663e..3c81887 100644 --- a/test/loaders/TimedApiBasedRepositoryLoaderTests.test.ts +++ b/test/loaders/TimedApiBasedRepositoryLoaderTests.test.ts @@ -1,10 +1,10 @@ import { afterEach, beforeAll, beforeEach, describe, expect, it, jest } from "@jest/globals"; -import { TimedApiBasedRepositoryLoader } from "../../src/loaders/TimedApiBasedRepositoryLoader"; +import { TimedApiBasedShuttleRepositoryLoader } from "../../src/loaders/TimedApiBasedShuttleRepositoryLoader"; import { resetGlobalFetchMockJson } from "../testHelpers/fetchMockHelpers"; import { UnoptimizedInMemoryShuttleRepository } from "../../src/repositories/UnoptimizedInMemoryShuttleRepository"; describe("TimedApiBasedRepositoryLoader", () => { - let loader: TimedApiBasedRepositoryLoader; + let loader: TimedApiBasedShuttleRepositoryLoader; let spies: any; beforeAll(() => { @@ -15,7 +15,7 @@ describe("TimedApiBasedRepositoryLoader", () => { beforeEach(() => { resetGlobalFetchMockJson(); - loader = new TimedApiBasedRepositoryLoader(new UnoptimizedInMemoryShuttleRepository()); + loader = new TimedApiBasedShuttleRepositoryLoader(new UnoptimizedInMemoryShuttleRepository()); spies = { fetchAndUpdateSystemData: jest.spyOn(loader, 'fetchAndUpdateSystemData'),