use server context method for other resolver tests

This commit is contained in:
2025-01-29 15:26:23 -08:00
parent 7586ebba04
commit 0344e7b99b
5 changed files with 91 additions and 127 deletions

View File

@@ -1,8 +1,5 @@
import { beforeEach, describe, expect, it } from "@jest/globals";
import { ServerContext } from "../../src/ServerContext";
import { UnoptimizedInMemoryRepository } from "../../src/repositories/UnoptimizedInMemoryRepository";
import { setUpTestServer } from "../testHelpers/apolloSetupHelpers";
import { ApolloServer } from "@apollo/server";
import { setupTestServerContext } from "../testHelpers/apolloSetupHelpers";
import {
addMockRouteToRepository,
addMockStopToRepository,
@@ -13,24 +10,18 @@ import { IRoute, IStop, ISystem } from "../../src/entities/entities";
import assert = require("node:assert");
describe("RouteResolvers", () => {
let testServer: ApolloServer<ServerContext>;
let repository: UnoptimizedInMemoryRepository;
beforeEach(async () => {
testServer = setUpTestServer();
repository = new UnoptimizedInMemoryRepository();
});
const context = setupTestServerContext();
let mockSystem: ISystem;
let mockRoute: IRoute;
let mockStop: IStop;
beforeEach(async () => {
mockSystem = await addMockSystemToRepository(repository);
mockSystem = await addMockSystemToRepository(context.repository);
const systemId = mockSystem.id;
mockRoute = await addMockRouteToRepository(repository, systemId);
mockStop = await addMockStopToRepository(repository, systemId);
mockRoute = await addMockRouteToRepository(context.repository, systemId);
mockStop = await addMockStopToRepository(context.repository, systemId);
});
@@ -49,7 +40,7 @@ describe("RouteResolvers", () => {
}
`;
return await testServer.executeOperation({
return await context.testServer.executeOperation({
query,
variables: {
systemId: mockSystem.id,
@@ -57,7 +48,7 @@ describe("RouteResolvers", () => {
},
}, {
contextValue: {
repository,
repository: context.repository,
}
});
}
@@ -67,13 +58,14 @@ describe("RouteResolvers", () => {
const expectedShuttle = expectedShuttles[0];
expectedShuttle.systemId = mockSystem.id;
expectedShuttle.routeId = mockRoute.id;
await repository.addOrUpdateShuttle(expectedShuttle);
await context.repository.addOrUpdateShuttle(expectedShuttle);
const response = await getResponseForShuttlesQuery();
assert(response.body.kind === "single");
expect(response.body.singleResult.errors).toBeUndefined()
const shuttle = (response.body.singleResult.data as any).system.route.shuttles[0];
const shuttle = (response.body.singleResult.data as
any).system.route.shuttles[0];
expect(shuttle.id).toEqual(expectedShuttle.id);
expect(shuttle.name).toEqual(expectedShuttle.name);
});
@@ -83,7 +75,8 @@ describe("RouteResolvers", () => {
assert(response.body.kind === "single");
expect(response.body.singleResult.errors).toBeUndefined()
const shuttles = (response.body.singleResult.data as any).system.route.shuttles;
const shuttles = (response.body.singleResult.data as
any).system.route.shuttles;
expect(shuttles.length).toEqual(0);
});
});
@@ -102,7 +95,7 @@ describe("RouteResolvers", () => {
}
`;
return await testServer.executeOperation({
return await context.testServer.executeOperation({
query,
variables: {
systemId: mockSystem.id,
@@ -111,7 +104,7 @@ describe("RouteResolvers", () => {
}
}, {
contextValue: {
repository,
repository: context.repository,
}
});
}
@@ -121,14 +114,15 @@ describe("RouteResolvers", () => {
const expectedOrderedStop = orderedStops[0];
expectedOrderedStop.stopId = mockStop.id;
expectedOrderedStop.routeId = mockRoute.id;
await repository.addOrUpdateOrderedStop(expectedOrderedStop);
await context.repository.addOrUpdateOrderedStop(expectedOrderedStop);
const response = await getResponseForOrderedStopQuery();
assert(response.body.kind === "single");
expect(response.body.singleResult.errors).toBeUndefined();
const orderedStop = (response.body.singleResult.data as any).system.route.orderedStop;
const orderedStop = (response.body.singleResult.data as
any).system.route.orderedStop;
expect(orderedStop.stopId).toEqual(expectedOrderedStop.stopId);
});
@@ -137,17 +131,18 @@ describe("RouteResolvers", () => {
const expectedOrderedStop = orderedStops[0];
expectedOrderedStop.stopId = mockStop.id;
expectedOrderedStop.routeId = mockRoute.id;
await repository.addOrUpdateOrderedStop(expectedOrderedStop);
await context.repository.addOrUpdateOrderedStop(expectedOrderedStop);
await repository.removeStopIfExists(mockStop.id);
await context.repository.removeStopIfExists(mockStop.id);
const response = await getResponseForOrderedStopQuery();
assert(response.body.kind === "single");
expect(response.body.singleResult.errors).toBeUndefined();
const orderedStop = (response.body.singleResult.data as any).system.route.orderedStop;
const orderedStop = (response.body.singleResult.data as
any).system.route.orderedStop;
expect(orderedStop).toBeNull();
});
});
});
});