import { beforeEach, describe } from "@jest/globals"; import { ApolloServer } from "@apollo/server"; import { UnoptimizedInMemoryRepository } from "../../src/repositories/UnoptimizedInMemoryRepository"; import { ServerContext } from "../../src/ServerContext"; import { setUpTestServer } from "../testHelpers/apolloSetupHelpers"; describe("OrderedStopResolvers", () => { let apolloServer: ApolloServer; let repository: UnoptimizedInMemoryRepository; beforeEach(async () => { apolloServer = setUpTestServer(); repository = new UnoptimizedInMemoryRepository(); }); describe("nextStop", () => { const query = ` query GetNextStop($systemId: ID!, $routeId: ID!, $stopId: ID!) { system(id: $systemId) { route(id: $routeId) { orderedStop(forStopId: $stopId) { nextStop { routeId stopId } } } } } `; }); describe("previousStop", () => { const query = ` query GetNextStop($systemId: ID!, $routeId: ID!, $stopId: ID!) { system(id: $systemId) { route(id: $routeId) { orderedStop(forStopId: $stopId) { previousStop { routeId stopId } } } } } `; }); describe("route", () => { // Note that there is no `orderedStop(forRouteId)` resolver, // so fetch all ordered stops for a stop instead const query = ` query GetNextStop($systemId: ID!, $stopId: ID!) { system(id: $systemId) { stop(id: $stopId) { orderedStops { route { id name } } } } } `; }); describe("stop", () => { const query = ` query GetNextStop($systemId: ID!, $routeId: ID!, $stopId: ID!) { system(id: $systemId) { route(id: $routeId) { orderedStop(forStopId: $stopId) { stop { name id } } } } } `; }); });