add test implementations for methods involving loops

This commit is contained in:
2025-01-22 15:41:28 -08:00
parent ad6a9191f3
commit 1027927bd6

View File

@@ -211,33 +211,35 @@ describe("ApiBasedRepositoryLoader", () => {
describe("fetchAndUpdateEtaDataForExistingStopsForSystemsInRepository", () => {
it("calls fetchAndUpdateEtaDataFoExistingStopsForSystemId for every system in repository", async () => {
const spy = jest.spyOn(loader, "fetchAndUpdateEtaDataForExistingStopsForSystemId");
const systems = generateMockSystems();
await Promise.all(systems.map(async (system) => {
await loader.repository.addOrUpdateSystem(system);
}));
await loader.fetchAndUpdateEtaDataForExistingStopsForSystemsInRepository();
expect(spy.mock.calls.length).toBe(systems.length);
});
});
describe("fetchAndUpdateEtaDataForExistingStopsForSystemId", () => {
it("calls fetchAndUpdateEtaDataForStopId for every stop in repository", async () => {
// const systems = generateMockSystems();
// await Promise.all(systems.map(async (system) => {
// await loader.repository.addOrUpdateSystem(system);
// }));
//
// const stop: IStop = {
// coordinates: {
// latitude: 1,
// longitude: 1,
// },
// id: "1",
// name: "Chapman Court",
// systemId: "263",
// };
// await loader.repository.addOrUpdateStop(stop);
const spy = jest.spyOn(loader, "fetchAndUpdateEtaDataForStopId");
const stops = generateMockStops();
stops.forEach((stop) => {
stop.systemId = "1";
});
await Promise.all(stops.map(async (stop) => {
await loader.repository.addOrUpdateStop(stop);
}))
}));
await loader.fetchAndUpdateEtaDataForExistingStopsForSystemId("1");
expect(spy.mock.calls.length).toEqual(stops.length);
});
});