update tests

This commit is contained in:
Alex Holliday committed 2026-06-10 09:30:24 -07:00
1 parent 2bf3c08f3c
commit c5f57eda62
10 files changed
+16 -16

No files matched your search

+1 -1
View File
@@ -1,5 +1,5 @@
import { jest } from "@jest/globals";
import { QueueHelper } from "../../src/service/job-queues/job-queue.helper.ts";
import { QueueHelper } from "../../src/worker/worker.helper.ts";
import { StatusService } from "../../src/service/statusService.ts";
import { IncidentService } from "../../src/domain/incidents/incident.service.ts";
import { InMemoryMonitorsRepository } from "./InMemoryMonitorsRepository.ts";
@@ -6,7 +6,7 @@ import type { IMonitorsRepository } from "../../src/domain/monitors/monitor.repo
import type { IUsersRepository } from "../../src/domain/users/user.repository.interface.ts";
import type { INotificationMessageBuilder } from "../../src/domain/notifications/notification.message-builder.ts";
import type { Monitor } from "../../src/domain/monitors/monitor.types.ts";
import type { MonitorActionDecision } from "../../src/service/job-queues/job-queue.helper.ts";
import type { MonitorActionDecision } from "../../src/worker/worker.helper.ts";
// ── Helpers ──────────────────────────────────────────────────────────────────
@@ -7,7 +7,7 @@ import type { IUsersRepository } from "../../../src/domain/users/user.repository
import type { INotificationMessageBuilder } from "../../../src/domain/notifications/notification.message-builder.ts";
import type { Monitor } from "../../../src/domain/monitors/monitor.types.ts";
import type { Incident } from "../../../src/domain/incidents/incident.type.ts";
import type { MonitorActionDecision } from "../../../src/service/job-queues/job-queue.helper.ts";
import type { MonitorActionDecision } from "../../../src/worker/worker.helper.ts";
// ── Helpers ──────────────────────────────────────────────────────────────────
@@ -44,7 +44,7 @@ jest.unstable_mockModule("less-simple-scheduler", () => ({
MongoStore: MockMongoStore,
}));
const { LessSimpleQueue } = await import("../../../src/service/job-queues/job-queue.less-simple.ts");
const { LessSimpleWorker: LessSimpleQueue } = await import("../../../src/worker/worker.less-simple.ts");
const createQueueHelper = () => ({
getHeartbeatJob: jest.fn().mockReturnValue(() => Promise.resolve()),
@@ -98,7 +98,7 @@ const createService = (
const jobQueue = overrides.jobQueue ?? createJobQueueMock();
const logger = overrides.logger ?? createMockLogger();
const service = new MonitorService({
jobQueue: jobQueue as any,
worker: jobQueue as any,
logger: logger as any,
games: (overrides.games ?? { cs2: { name: "Counter-Strike 2" } }) as any,
monitorsRepository: overrides.monitorsRepository ?? createMonitorsRepositoryMock(),
@@ -1535,7 +1535,7 @@ describe("MonitorService", () => {
const logger = createMockLogger();
const service = new MonitorService({
jobQueue: jobQueue as any,
worker: jobQueue as any,
logger: logger as any,
games: {} as any,
monitorsRepository,
@@ -2,7 +2,7 @@ import { describe, expect, it, beforeEach } from "@jest/globals";
import { NotificationMessageBuilder } from "../../../src/domain/notifications/notification.message-builder.ts";
import type { Monitor } from "../../../src/domain/monitors/monitor.types.ts";
import type { MonitorStatusResponse, HardwareStatusPayload } from "../../../src/types/network.ts";
import type { MonitorActionDecision } from "../../../src/service/job-queues/job-queue.helper.ts";
import type { MonitorActionDecision } from "../../../src/worker/worker.helper.ts";
// ── Helpers ──────────────────────────────────────────────────────────────────
@@ -4,7 +4,7 @@ import { createMockLogger } from "../../helpers/createMockLogger.ts";
import type { Monitor } from "../../../src/domain/monitors/monitor.types.ts";
import type { Notification } from "../../../src/domain/notifications/notification.type.ts";
import type { MonitorStatusResponse } from "../../../src/types/network.ts";
import type { MonitorActionDecision } from "../../../src/service/job-queues/job-queue.helper.ts";
import type { MonitorActionDecision } from "../../../src/worker/worker.helper.ts";
// ── Helpers ──────────────────────────────────────────────────────────────────
@@ -35,7 +35,7 @@ jest.unstable_mockModule("super-simple-scheduler", () => ({
default: MockScheduler,
}));
const { SuperSimpleQueue } = await import("../../../src/service/job-queues/job-queue.sumper-simple.ts");
const { SuperSimpleQueue } = await import("../../../src/worker/worker.super-simple.ts");
const createQueueHelper = () => ({
getHeartbeatJob: jest.fn().mockReturnValue(() => Promise.resolve()),
@@ -1,5 +1,5 @@
import { describe, expect, it, jest } from "@jest/globals";
import { QueueHelper } from "../../../src/service/job-queues/job-queue.helper.ts";
import { QueueHelper } from "../../../src/worker/worker.helper.ts";
import type { Monitor } from "../../../src/domain/monitors/monitor.types.ts";
import { createMockLogger } from "../../helpers/createMockLogger.ts";
@@ -65,7 +65,7 @@ const createService = (overrides?: Record<string, unknown>) => {
const settingsService = {
getSettings: jest.fn().mockReturnValue(makeAppSettings()),
};
const jobQueue = {
const worker = {
deleteJob: jest.fn().mockResolvedValue(undefined),
};
const jwtMock = {
@@ -85,7 +85,7 @@ const createService = (overrides?: Record<string, unknown>) => {
monitorsRepository,
emailService,
settingsService,
jobQueue,
worker,
jwt: jwtMock,
crypto: cryptoMock,
...overrides,
@@ -475,23 +475,23 @@ describe("UserService", () => {
describe("deleteUser", () => {
it("deletes user and cleans up monitor jobs for superadmin", async () => {
const { service, usersRepository, jobQueue, monitorsRepository } = createService();
const { service, usersRepository, worker, monitorsRepository } = createService();
await service.deleteUser({ userId: "user-1", teamId: "team-1", roles: ["superadmin"] });
expect(monitorsRepository.findByTeamId).toHaveBeenCalledWith("team-1", {});
expect(jobQueue.deleteJob).toHaveBeenCalledTimes(2);
expect(worker.deleteJob).toHaveBeenCalledTimes(2);
expect(usersRepository.deleteById).toHaveBeenCalledWith("user-1");
});
it("handles null monitors for superadmin gracefully", async () => {
const { service, usersRepository, jobQueue } = createService({
const { service, usersRepository, worker } = createService({
monitorsRepository: { findByTeamId: jest.fn().mockResolvedValue(null) },
});
await service.deleteUser({ userId: "user-1", teamId: "team-1", roles: ["superadmin"] });
expect(jobQueue.deleteJob).not.toHaveBeenCalled();
expect(worker.deleteJob).not.toHaveBeenCalled();
expect(usersRepository.deleteById).toHaveBeenCalledWith("user-1");
});