From 0076d987ca919e31ec7b41739812d06b0269d3ba Mon Sep 17 00:00:00 2001 From: Brendan Chen Date: Mon, 7 Apr 2025 19:06:03 -0700 Subject: [PATCH] rename methods in getter repository --- .../ApiBasedShuttleRepositoryLoader.ts | 8 +-- src/repositories/ShuttleGetterRepository.ts | 11 ++-- .../UnoptimizedInMemoryShuttleRepository.ts | 8 +-- src/resolvers/ShuttleResolvers.ts | 2 +- src/resolvers/SystemResolvers.ts | 6 +-- ...iBasedShuttleRepositoryLoaderTests.test.ts | 8 +-- ...izedInMemoryShuttleRepositoryTests.test.ts | 52 +++++++++---------- 7 files changed, 49 insertions(+), 46 deletions(-) diff --git a/src/loaders/ApiBasedShuttleRepositoryLoader.ts b/src/loaders/ApiBasedShuttleRepositoryLoader.ts index 00cf75a..e7f916f 100644 --- a/src/loaders/ApiBasedShuttleRepositoryLoader.ts +++ b/src/loaders/ApiBasedShuttleRepositoryLoader.ts @@ -36,7 +36,7 @@ export class ApiBasedShuttleRepositoryLoader implements ShuttleRepositoryLoader public async fetchAndUpdateRouteDataForSystem() { const systemId = this.passioSystemId; const routeIdsToPrune = await this.constructExistingEntityIdSet(async () => { - return await this.repository.getRoutesBySystemId(this.systemIdForConstructedData); + return await this.repository.getRoutes(this.systemIdForConstructedData); }); const params = { @@ -89,7 +89,7 @@ export class ApiBasedShuttleRepositoryLoader implements ShuttleRepositoryLoader // Fetch from the API // Pass JSON output into two different methods to update repository const stopIdsToPrune = await this.constructExistingEntityIdSet(async () => { - return await this.repository.getStopsBySystemId(this.systemIdForConstructedData); + return await this.repository.getStops(this.systemIdForConstructedData); }); const params = { @@ -127,7 +127,7 @@ export class ApiBasedShuttleRepositoryLoader implements ShuttleRepositoryLoader public async fetchAndUpdateShuttleDataForSystem() { const systemId = this.passioSystemId; const shuttleIdsToPrune = await this.constructExistingEntityIdSet(async () => { - return await this.repository.getShuttlesBySystemId(this.systemIdForConstructedData); + return await this.repository.getShuttles(this.systemIdForConstructedData); }); const params = { @@ -184,7 +184,7 @@ export class ApiBasedShuttleRepositoryLoader implements ShuttleRepositoryLoader } public async fetchAndUpdateEtaDataForExistingStopsForSystem() { - const stops = await this.repository.getStopsBySystemId(this.systemIdForConstructedData); + const stops = await this.repository.getStops(this.systemIdForConstructedData); await Promise.all(stops.map(async (stop) => { let stopId = stop.id; await this.fetchAndUpdateEtaDataForStopId(stopId); diff --git a/src/repositories/ShuttleGetterRepository.ts b/src/repositories/ShuttleGetterRepository.ts index e86cb2e..ca17231 100644 --- a/src/repositories/ShuttleGetterRepository.ts +++ b/src/repositories/ShuttleGetterRepository.ts @@ -1,18 +1,21 @@ import { IEta, IOrderedStop, IRoute, IShuttle, IStop } from "../entities/entities"; +/** + * Shuttle getter repository to be linked to a system. + */ export interface ShuttleGetterRepository { // TODO: Remove system ID argument from all getters - getStopsBySystemId(systemId: string): Promise; + getStops(systemId: string): Promise; getStopById(stopId: string): Promise; - getRoutesBySystemId(systemId: string): Promise; + getRoutes(systemId: string): Promise; getRouteById(routeId: string): Promise; - getShuttlesBySystemId(systemId: string): Promise; + getShuttles(systemId: string): Promise; getShuttleById(shuttleId: string): Promise; getShuttlesByRouteId(routeId: string): Promise; - getEtasForShuttleId(shuttleId: string): Promise; + getEtas(shuttleId: string): Promise; getEtasForStopId(stopId: string): Promise; getEtaForShuttleAndStopId(shuttleId: string, stopId: string): Promise; diff --git a/src/repositories/UnoptimizedInMemoryShuttleRepository.ts b/src/repositories/UnoptimizedInMemoryShuttleRepository.ts index 6d613f2..0246a9c 100644 --- a/src/repositories/UnoptimizedInMemoryShuttleRepository.ts +++ b/src/repositories/UnoptimizedInMemoryShuttleRepository.ts @@ -15,7 +15,7 @@ export class UnoptimizedInMemoryShuttleRepository implements ShuttleGetterSetter private subscribers: ((eta: IEta) => void)[] = []; - public async getStopsBySystemId(systemId: string) { + public async getStops(systemId: string) { return this.stops.filter(stop => stop.systemId === systemId); } @@ -23,7 +23,7 @@ export class UnoptimizedInMemoryShuttleRepository implements ShuttleGetterSetter return this.findEntityById(stopId, this.stops); } - public async getRoutesBySystemId(systemId: string) { + public async getRoutes(systemId: string) { return this.routes.filter(route => route.systemId === systemId); } @@ -31,7 +31,7 @@ export class UnoptimizedInMemoryShuttleRepository implements ShuttleGetterSetter return this.findEntityById(routeId, this.routes); } - public async getShuttlesBySystemId(systemId: string) { + public async getShuttles(systemId: string) { return this.shuttles.filter(shuttle => shuttle.systemId === systemId); } @@ -43,7 +43,7 @@ export class UnoptimizedInMemoryShuttleRepository implements ShuttleGetterSetter return this.findEntityById(shuttleId, this.shuttles); } - public async getEtasForShuttleId(shuttleId: string) { + public async getEtas(shuttleId: string) { return this.etas.filter(eta => eta.shuttleId === shuttleId); } diff --git a/src/resolvers/ShuttleResolvers.ts b/src/resolvers/ShuttleResolvers.ts index 103e40f..c3f60f6 100644 --- a/src/resolvers/ShuttleResolvers.ts +++ b/src/resolvers/ShuttleResolvers.ts @@ -24,7 +24,7 @@ export const ShuttleResolvers: Resolvers = { const system = contextValue.findSystemById(parent.systemId); if (!system) return null; - const etasForShuttle = await system.shuttleRepository.getEtasForShuttleId(parent.id); + const etasForShuttle = await system.shuttleRepository.getEtas(parent.id); if (!etasForShuttle) return null; const computedEtas = await Promise.all(etasForShuttle.map(async ({ diff --git a/src/resolvers/SystemResolvers.ts b/src/resolvers/SystemResolvers.ts index 8ea01ae..febd308 100644 --- a/src/resolvers/SystemResolvers.ts +++ b/src/resolvers/SystemResolvers.ts @@ -9,7 +9,7 @@ export const SystemResolvers: Resolvers = { return []; } - return await system.shuttleRepository.getRoutesBySystemId(parent.id); + return await system.shuttleRepository.getRoutes(parent.id); }, stops: async (parent, _args, contextValue, _info) => { const system = contextValue.findSystemById(parent.id); @@ -17,7 +17,7 @@ export const SystemResolvers: Resolvers = { return []; } - return await system.shuttleRepository.getStopsBySystemId(parent.id); + return await system.shuttleRepository.getStops(parent.id); }, stop: async (parent, args, contextValue, _info) => { if (!args.id) return null; @@ -76,7 +76,7 @@ export const SystemResolvers: Resolvers = { return []; } - return await system.shuttleRepository.getShuttlesBySystemId(parent.id); + return await system.shuttleRepository.getShuttles(parent.id); } }, } diff --git a/test/loaders/ApiBasedShuttleRepositoryLoaderTests.test.ts b/test/loaders/ApiBasedShuttleRepositoryLoaderTests.test.ts index f08a19c..0bbd8df 100644 --- a/test/loaders/ApiBasedShuttleRepositoryLoaderTests.test.ts +++ b/test/loaders/ApiBasedShuttleRepositoryLoaderTests.test.ts @@ -45,7 +45,7 @@ describe("ApiBasedRepositoryLoader", () => { await loader.fetchAndUpdateRouteDataForSystem(); // Assert - const routes = await loader.repository.getRoutesBySystemId(systemId); + const routes = await loader.repository.getRoutes(systemId); expect(routes.length).toEqual(fetchRouteDataSuccessfulResponse.all.length) }); @@ -78,7 +78,7 @@ describe("ApiBasedRepositoryLoader", () => { await loader.fetchAndUpdateStopAndPolylineDataForRoutesInSystem(); - const stops = await loader.repository.getStopsBySystemId(systemId); + const stops = await loader.repository.getStops(systemId); expect(stops.length).toEqual(stopsArray.length); await Promise.all(stops.map(async (stop) => { @@ -86,7 +86,7 @@ describe("ApiBasedRepositoryLoader", () => { expect(orderedStops.length).toBeGreaterThan(0); })); - const routes = await loader.repository.getRoutesBySystemId(systemId); + const routes = await loader.repository.getRoutes(systemId); routes.forEach((route) => { expect(route.polylineCoordinates.length).toBeGreaterThan(0); }); @@ -114,7 +114,7 @@ describe("ApiBasedRepositoryLoader", () => { await loader.fetchAndUpdateShuttleDataForSystem(); - const shuttles = await loader.repository.getShuttlesBySystemId(systemId); + const shuttles = await loader.repository.getShuttles(systemId); expect(shuttles.length).toEqual(busesInResponse.length); }); diff --git a/test/repositories/UnoptimizedInMemoryShuttleRepositoryTests.test.ts b/test/repositories/UnoptimizedInMemoryShuttleRepositoryTests.test.ts index 4cb2419..d6f6018 100644 --- a/test/repositories/UnoptimizedInMemoryShuttleRepositoryTests.test.ts +++ b/test/repositories/UnoptimizedInMemoryShuttleRepositoryTests.test.ts @@ -27,12 +27,12 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateStop(stop); } - const result = await repository.getStopsBySystemId("sys1"); + const result = await repository.getStops("sys1"); expect(result).toEqual(mockStops.filter((stop) => stop.systemId === "sys1")); }); test("returns an empty list if there are no stops for the given system ID", async () => { - const result = await repository.getStopsBySystemId("nonexistent-system"); + const result = await repository.getStops("nonexistent-system"); expect(result).toEqual([]); }); }); @@ -60,12 +60,12 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateRoute(route); } - const result = await repository.getRoutesBySystemId("sys1"); + const result = await repository.getRoutes("sys1"); expect(result).toEqual(mockRoutes.filter((route) => route.systemId === "sys1")); }); test("returns an empty list if there are no routes for the system ID", async () => { - const result = await repository.getRoutesBySystemId("nonexistent-system"); + const result = await repository.getRoutes("nonexistent-system"); expect(result).toEqual([]); }); }); @@ -92,12 +92,12 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateShuttle(shuttle); } - const result = await repository.getShuttlesBySystemId("sys1"); + const result = await repository.getShuttles("sys1"); expect(result).toEqual(mockShuttles.filter((sh) => sh.systemId === "sys1")); }); test("returns an empty list if there are no shuttles for the system ID", async () => { - const result = await repository.getShuttlesBySystemId("nonexistent-system"); + const result = await repository.getShuttles("nonexistent-system"); expect(result).toEqual([]); }); }); @@ -143,12 +143,12 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateEta(eta); } - const result = await repository.getEtasForShuttleId("sh1"); + const result = await repository.getEtas("sh1"); expect(result).toEqual(mockEtas.filter((eta) => eta.shuttleId === "sh1")); }); test("returns an empty list if there are no ETAs for the shuttle ID", async () => { - const result = await repository.getEtasForShuttleId("nonexistent-shuttle"); + const result = await repository.getEtas("nonexistent-shuttle"); expect(result).toEqual([]); }); }); @@ -292,7 +292,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateRoute(newRoute); - const result = await repository.getRoutesBySystemId("sys1"); + const result = await repository.getRoutes("sys1"); expect(result).toEqual([newRoute]); }); @@ -305,7 +305,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateRoute(existingRoute); await repository.addOrUpdateRoute(updatedRoute); - const result = await repository.getRoutesBySystemId("sys1"); + const result = await repository.getRoutes("sys1"); expect(result).toEqual([updatedRoute]); }); }); @@ -317,7 +317,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateShuttle(newShuttle); - const result = await repository.getShuttlesBySystemId("sys1"); + const result = await repository.getShuttles("sys1"); expect(result).toEqual([newShuttle]); }); @@ -330,7 +330,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateShuttle(existingShuttle); await repository.addOrUpdateShuttle(updatedShuttle); - const result = await repository.getShuttlesBySystemId("sys1"); + const result = await repository.getShuttles("sys1"); expect(result).toEqual([updatedShuttle]); }); }); @@ -342,7 +342,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateStop(newStop); - const result = await repository.getStopsBySystemId("sys1"); + const result = await repository.getStops("sys1"); expect(result).toEqual([newStop]); }); @@ -355,7 +355,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateStop(existingStop); await repository.addOrUpdateStop(updatedStop); - const result = await repository.getStopsBySystemId("sys1"); + const result = await repository.getStops("sys1"); expect(result).toEqual([updatedStop]); }); }); @@ -392,7 +392,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateEta(newEta); - const result = await repository.getEtasForShuttleId(newEta.shuttleId); + const result = await repository.getEtas(newEta.shuttleId); expect(result).toEqual([newEta]); }); @@ -405,7 +405,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.addOrUpdateEta(existingEta); await repository.addOrUpdateEta(updatedEta); - const result = await repository.getEtasForShuttleId(existingEta.shuttleId); + const result = await repository.getEtas(existingEta.shuttleId); expect(result).toEqual([updatedEta]); }); }); @@ -422,7 +422,7 @@ describe("UnoptimizedInMemoryRepository", () => { const routeToRemove = mockRoutes[0]; await repository.removeRouteIfExists(routeToRemove.id); - const remainingRoutes = await repository.getRoutesBySystemId(systemId); + const remainingRoutes = await repository.getRoutes(systemId); expect(remainingRoutes).toHaveLength(mockRoutes.length - 1); }); @@ -436,7 +436,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.removeRouteIfExists("nonexistent-id"); - const remainingRoutes = await repository.getRoutesBySystemId(systemId); + const remainingRoutes = await repository.getRoutes(systemId); expect(remainingRoutes).toHaveLength(mockRoutes.length); }); }); @@ -453,7 +453,7 @@ describe("UnoptimizedInMemoryRepository", () => { const shuttleToRemove = mockShuttles[0]; await repository.removeShuttleIfExists(shuttleToRemove.id); - const remainingShuttles = await repository.getShuttlesBySystemId(systemId); + const remainingShuttles = await repository.getShuttles(systemId); expect(remainingShuttles).toHaveLength(mockShuttles.length - 1); }); @@ -467,7 +467,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.removeShuttleIfExists("nonexistent-id"); - const remainingShuttles = await repository.getShuttlesBySystemId(systemId); + const remainingShuttles = await repository.getShuttles(systemId); expect(remainingShuttles).toHaveLength(mockShuttles.length); }); }); @@ -484,7 +484,7 @@ describe("UnoptimizedInMemoryRepository", () => { const stopToRemove = mockStops[0]; await repository.removeStopIfExists(stopToRemove.id); - const remainingStops = await repository.getStopsBySystemId(systemId); + const remainingStops = await repository.getStops(systemId); expect(remainingStops).toHaveLength(mockStops.length - 1); }); @@ -498,7 +498,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.removeStopIfExists("nonexistent-id"); - const remainingStops = await repository.getStopsBySystemId(systemId); + const remainingStops = await repository.getStops(systemId); expect(remainingStops).toHaveLength(mockStops.length); }); }); @@ -580,7 +580,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.clearShuttleData(); - const result = await repository.getShuttlesBySystemId("sys1"); + const result = await repository.getShuttles("sys1"); expect(result).toEqual([]); }); }); @@ -594,7 +594,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.clearEtaData(); - const result = await repository.getEtasForShuttleId("shuttle1"); + const result = await repository.getEtas("shuttle1"); expect(result).toEqual([]); }); }); @@ -622,7 +622,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.clearRouteData(); - const result = await repository.getRoutesBySystemId("sys1"); + const result = await repository.getRoutes("sys1"); expect(result).toEqual([]); }); }); @@ -636,7 +636,7 @@ describe("UnoptimizedInMemoryRepository", () => { await repository.clearStopData(); - const result = await repository.getStopsBySystemId("sys1"); + const result = await repository.getStops("sys1"); expect(result).toEqual([]); }); });