diff --git a/server/test/unit/providers/network/dnsProvider.test.ts b/server/test/unit/providers/network/dnsProvider.test.ts index 92c874836..ba38fa5d2 100644 --- a/server/test/unit/providers/network/dnsProvider.test.ts +++ b/server/test/unit/providers/network/dnsProvider.test.ts @@ -52,7 +52,7 @@ beforeEach(() => { // ── Contract ───────────────────────────────────────────────────────────────── testStatusProviderContract("DNSProvider", { - create: () => new DNSProvider({} as any), + create: () => new DNSProvider(mockResolverInstance as any), supportedType: "dns", unsupportedType: "ping", makeMonitor: () => makeMonitor(), @@ -63,7 +63,7 @@ testStatusProviderContract("DNSProvider", { describe("DNSProvider", () => { it("returns success with results and payload on resolve", async () => { mockResolverInstance.resolve4.mockResolvedValue(["1.2.3.4"]); - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); const result = await provider.handle(makeMonitor()); @@ -88,63 +88,63 @@ describe("DNSProvider", () => { }); it("calls setServers with the configured dnsServer", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsServer: "1.1.1.1" })); expect(mockResolverInstance.setServers).toHaveBeenCalledWith(["1.1.1.1"]); }); it("defaults to A record when dnsRecordType is not provided", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); const result = await provider.handle(makeMonitor({ dnsRecordType: undefined })); expect(mockResolverInstance.resolve4).toHaveBeenCalledWith("example.com"); expect(result.payload?.recordType).toBe("A"); }); it("dispatches AAAA records to resolve6", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "AAAA" })); expect(mockResolverInstance.resolve6).toHaveBeenCalledWith("example.com"); }); it("dispatches CNAME records to resolveCname", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "CNAME" })); expect(mockResolverInstance.resolveCname).toHaveBeenCalledWith("example.com"); }); it("dispatches MX records to resolveMx", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "MX" })); expect(mockResolverInstance.resolveMx).toHaveBeenCalledWith("example.com"); }); it("dispatches TXT records to resolveTxt", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "TXT" })); expect(mockResolverInstance.resolveTxt).toHaveBeenCalledWith("example.com"); }); it("dispatches NS records to resolveNs", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "NS" })); expect(mockResolverInstance.resolveNs).toHaveBeenCalledWith("example.com"); }); it("falls back to generic resolve for unrecognized record types", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "SOA" })); expect(mockResolverInstance.resolve).toHaveBeenCalledWith("example.com", "SOA"); }); it("treats record type case-insensitively", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await provider.handle(makeMonitor({ dnsRecordType: "mx" })); expect(mockResolverInstance.resolveMx).toHaveBeenCalledWith("example.com"); }); it("returns failure response with NETWORK_ERROR when resolver rejects", async () => { mockResolverInstance.resolve4.mockRejectedValue(new Error("ENOTFOUND")); - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); const result = await provider.handle(makeMonitor()); @@ -170,7 +170,7 @@ describe("DNSProvider", () => { it("stringifies non-Error rejections in failure response", async () => { mockResolverInstance.resolve4.mockRejectedValue("DNS bombed"); - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); const result = await provider.handle(makeMonitor()); @@ -179,7 +179,7 @@ describe("DNSProvider", () => { }); it("throws AppError when dnsServer is missing", async () => { - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await expect(provider.handle(makeMonitor({ dnsServer: undefined }))).rejects.toThrow("DNS server is required for DNS monitoring"); }); @@ -188,7 +188,7 @@ describe("DNSProvider", () => { mockResolverInstance.setServers.mockImplementationOnce(() => { throw new Error(""); }); - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await expect(provider.handle(makeMonitor())).rejects.toThrow("Error performing DNS check"); }); @@ -197,7 +197,7 @@ describe("DNSProvider", () => { mockResolverInstance.setServers.mockImplementationOnce(() => { throw 42; }); - const provider = new DNSProvider({} as any); + const provider = new DNSProvider(mockResolverInstance as any); await expect(provider.handle(makeMonitor())).rejects.toThrow("42"); });