mirror of
https://github.com/brendan-ch/project-inter-server.git
synced 2026-04-17 16:00:32 +00:00
restructure parking and shuttle repository loaders
This commit is contained in:
@@ -6,7 +6,7 @@ import { NotificationRepository } from "../repositories/NotificationRepository";
|
|||||||
import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository";
|
import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository";
|
||||||
import { InMemoryNotificationRepository } from "../repositories/InMemoryNotificationRepository";
|
import { InMemoryNotificationRepository } from "../repositories/InMemoryNotificationRepository";
|
||||||
import { AppleNotificationSender } from "../notifications/senders/AppleNotificationSender";
|
import { AppleNotificationSender } from "../notifications/senders/AppleNotificationSender";
|
||||||
import { ApiBasedShuttleRepositoryLoader } from "../loaders/ApiBasedShuttleRepositoryLoader";
|
import { ApiBasedShuttleRepositoryLoader } from "../loaders/shuttle/ApiBasedShuttleRepositoryLoader";
|
||||||
|
|
||||||
export interface InterchangeSystemBuilderArguments {
|
export interface InterchangeSystemBuilderArguments {
|
||||||
name: string;
|
name: string;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { ApolloServer } from "@apollo/server";
|
|||||||
import { startStandaloneServer } from "@apollo/server/standalone";
|
import { startStandaloneServer } from "@apollo/server/standalone";
|
||||||
import { MergedResolvers } from "./MergedResolvers";
|
import { MergedResolvers } from "./MergedResolvers";
|
||||||
import { ServerContext } from "./ServerContext";
|
import { ServerContext } from "./ServerContext";
|
||||||
import { loadShuttleTestData, supportedIntegrationTestSystems } from "./loaders/loadShuttleTestData";
|
import { loadShuttleTestData, supportedIntegrationTestSystems } from "./loaders/shuttle/loadShuttleTestData";
|
||||||
import { InterchangeSystem, InterchangeSystemBuilderArguments } from "./entities/InterchangeSystem";
|
import { InterchangeSystem, InterchangeSystemBuilderArguments } from "./entities/InterchangeSystem";
|
||||||
|
|
||||||
const typeDefs = readFileSync("./schema.graphqls", "utf8");
|
const typeDefs = readFileSync("./schema.graphqls", "utf8");
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository";
|
import { ShuttleGetterSetterRepository } from "../../repositories/ShuttleGetterSetterRepository";
|
||||||
import { IEta, IRoute, IShuttle, IStop } from "../entities/ShuttleRepositoryEntities";
|
import { IEta, IRoute, IShuttle, IStop } from "../../entities/ShuttleRepositoryEntities";
|
||||||
import { ShuttleRepositoryLoader } from "./ShuttleRepositoryLoader";
|
import { ShuttleRepositoryLoader } from "./ShuttleRepositoryLoader";
|
||||||
import { IEntityWithId } from "../entities/SharedEntities";
|
import { IEntityWithId } from "../../entities/SharedEntities";
|
||||||
import { ApiResponseError } from "./ApiResponseError";
|
import { ApiResponseError } from "../ApiResponseError";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class which can load data into a repository from the
|
* Class which can load data into a repository from the
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { RepositoryLoader } from "./RepositoryLoader";
|
import { RepositoryLoader } from "../RepositoryLoader";
|
||||||
|
|
||||||
export interface ShuttleRepositoryLoader extends RepositoryLoader {
|
export interface ShuttleRepositoryLoader extends RepositoryLoader {
|
||||||
fetchAndUpdateRouteDataForSystem(): Promise<void>;
|
fetchAndUpdateRouteDataForSystem(): Promise<void>;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
// Mock data
|
// Mock data
|
||||||
import { IEta, IOrderedStop, IRoute, IShuttle, IStop } from "../entities/ShuttleRepositoryEntities";
|
import { IEta, IOrderedStop, IRoute, IShuttle, IStop } from "../../entities/ShuttleRepositoryEntities";
|
||||||
import { ShuttleGetterSetterRepository } from "../repositories/ShuttleGetterSetterRepository";
|
import { ShuttleGetterSetterRepository } from "../../repositories/ShuttleGetterSetterRepository";
|
||||||
import { InterchangeSystemBuilderArguments } from "../entities/InterchangeSystem";
|
import { InterchangeSystemBuilderArguments } from "../../entities/InterchangeSystem";
|
||||||
|
|
||||||
export const supportedIntegrationTestSystems: InterchangeSystemBuilderArguments[] = [
|
export const supportedIntegrationTestSystems: InterchangeSystemBuilderArguments[] = [
|
||||||
{
|
{
|
||||||
@@ -2,7 +2,7 @@ import { afterEach, beforeAll, beforeEach, describe, expect, it, jest } from "@j
|
|||||||
import { TimedApiBasedRepositoryLoader } from "../../src/loaders/TimedApiBasedRepositoryLoader";
|
import { TimedApiBasedRepositoryLoader } from "../../src/loaders/TimedApiBasedRepositoryLoader";
|
||||||
import { resetGlobalFetchMockJson } from "../testHelpers/fetchMockHelpers";
|
import { resetGlobalFetchMockJson } from "../testHelpers/fetchMockHelpers";
|
||||||
import { UnoptimizedInMemoryShuttleRepository } from "../../src/repositories/UnoptimizedInMemoryShuttleRepository";
|
import { UnoptimizedInMemoryShuttleRepository } from "../../src/repositories/UnoptimizedInMemoryShuttleRepository";
|
||||||
import { ApiBasedShuttleRepositoryLoader } from "../../src/loaders/ApiBasedShuttleRepositoryLoader";
|
import { ApiBasedShuttleRepositoryLoader } from "../../src/loaders/shuttle/ApiBasedShuttleRepositoryLoader";
|
||||||
|
|
||||||
describe("TimedApiBasedRepositoryLoader", () => {
|
describe("TimedApiBasedRepositoryLoader", () => {
|
||||||
let timedLoader: TimedApiBasedRepositoryLoader;
|
let timedLoader: TimedApiBasedRepositoryLoader;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { beforeEach, describe, expect, it, jest } from "@jest/globals";
|
import { beforeEach, describe, expect, it, jest } from "@jest/globals";
|
||||||
import {
|
import {
|
||||||
ChapmanApiBasedParkingRepositoryLoader
|
ChapmanApiBasedParkingRepositoryLoader
|
||||||
} from "../../../src/loaders/ParkingRepositoryLoaders/ChapmanApiBasedParkingRepositoryLoader";
|
} from "../../../src/loaders/parking/ChapmanApiBasedParkingRepositoryLoader";
|
||||||
import { InMemoryParkingRepository } from "../../../src/repositories/InMemoryParkingRepository";
|
import { InMemoryParkingRepository } from "../../../src/repositories/InMemoryParkingRepository";
|
||||||
import {
|
import {
|
||||||
resetGlobalFetchMockJson,
|
resetGlobalFetchMockJson,
|
||||||
@@ -1,21 +1,21 @@
|
|||||||
import { afterEach, beforeEach, describe, expect, it, jest } from "@jest/globals";
|
import { afterEach, beforeEach, describe, expect, it, jest } from "@jest/globals";
|
||||||
import { ApiBasedShuttleRepositoryLoader } from "../../src/loaders/ApiBasedShuttleRepositoryLoader";
|
import { ApiBasedShuttleRepositoryLoader } from "../../../src/loaders/shuttle/ApiBasedShuttleRepositoryLoader";
|
||||||
import { UnoptimizedInMemoryShuttleRepository } from "../../src/repositories/UnoptimizedInMemoryShuttleRepository";
|
import { UnoptimizedInMemoryShuttleRepository } from "../../../src/repositories/UnoptimizedInMemoryShuttleRepository";
|
||||||
import { fetchRouteDataSuccessfulResponse } from "../jsonSnapshots/fetchRouteData/fetchRouteDataSuccessfulResponse";
|
import { fetchRouteDataSuccessfulResponse } from "../../jsonSnapshots/fetchRouteData/fetchRouteDataSuccessfulResponse";
|
||||||
import {
|
import {
|
||||||
fetchStopAndPolylineDataSuccessfulResponse
|
fetchStopAndPolylineDataSuccessfulResponse
|
||||||
} from "../jsonSnapshots/fetchStopAndPolylineData/fetchStopAndPolylineDataSuccessfulResponse";
|
} from "../../jsonSnapshots/fetchStopAndPolylineData/fetchStopAndPolylineDataSuccessfulResponse";
|
||||||
import { generateMockRoutes, generateMockShuttles, generateMockStops } from "../testHelpers/mockDataGenerators";
|
import { generateMockRoutes, generateMockShuttles, generateMockStops } from "../../testHelpers/mockDataGenerators";
|
||||||
import {
|
import {
|
||||||
fetchShuttleDataSuccessfulResponse
|
fetchShuttleDataSuccessfulResponse
|
||||||
} from "../jsonSnapshots/fetchShuttleData/fetchShuttleDataSuccessfulResponse";
|
} from "../../jsonSnapshots/fetchShuttleData/fetchShuttleDataSuccessfulResponse";
|
||||||
import { fetchEtaDataSuccessfulResponse } from "../jsonSnapshots/fetchEtaData/fetchEtaDataSuccessfulResponse";
|
import { fetchEtaDataSuccessfulResponse } from "../../jsonSnapshots/fetchEtaData/fetchEtaDataSuccessfulResponse";
|
||||||
import {
|
import {
|
||||||
resetGlobalFetchMockJson,
|
resetGlobalFetchMockJson,
|
||||||
updateGlobalFetchMockJson,
|
updateGlobalFetchMockJson,
|
||||||
updateGlobalFetchMockJsonToThrowSyntaxError
|
updateGlobalFetchMockJsonToThrowSyntaxError
|
||||||
} from "../testHelpers/fetchMockHelpers";
|
} from "../../testHelpers/fetchMockHelpers";
|
||||||
import { assertAsyncCallbackThrowsApiResponseError } from "../testHelpers/assertAsyncCallbackThrowsApiResponseError";
|
import { assertAsyncCallbackThrowsApiResponseError } from "../../testHelpers/assertAsyncCallbackThrowsApiResponseError";
|
||||||
|
|
||||||
describe("ApiBasedShuttleRepositoryLoader", () => {
|
describe("ApiBasedShuttleRepositoryLoader", () => {
|
||||||
let loader: ApiBasedShuttleRepositoryLoader;
|
let loader: ApiBasedShuttleRepositoryLoader;
|
||||||
Reference in New Issue
Block a user