/** * Integration tests for Security Audit MCP Server */ import { describe, it, expect, beforeEach } from "vitest"; import { XraySecurityAuditServer } from "./security-audit.server"; import * as fs from "fs"; import * as path from "path"; describe("security-audit.server integration", () => { describe("module exports", () => { it("should export server class", () => { expect(XraySecurityAuditServer).toBeDefined(); expect(typeof XraySecurityAuditServer).toBe("function"); }); it("should be able to instantiate the server", () => { const server = new XraySecurityAuditServer(); expect(server).toBeDefined(); }); it("should have run method", () => { const server = new XraySecurityAuditServer(); expect(typeof server.run).toBe("function"); }); }); describe("server structure", () => { let server: XraySecurityAuditServer; beforeEach(() => { server = new XraySecurityAuditServer(); }); it("should instantiate correctly", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should have run async method", () => { expect(server.run).toBeInstanceOf(Function); }); }); describe("security audit capabilities", () => { let server: XraySecurityAuditServer; beforeEach(() => { server = new XraySecurityAuditServer(); }); it("should analyze TypeScript files", () => { const testFile = path.join(process.cwd(), "src/mcps/knowledge-skills/security-audit.server.ts"); const exists = fs.existsSync(testFile); expect(exists).toBe(true); }); it("should analyze JavaScript files", () => { const testFile = path.join(process.cwd(), "src/mcps/knowledge-skills/security-audit.server.ts"); const exists = fs.existsSync(testFile); expect(exists).toBe(true); }); it("should detect multiple vulnerability categories", () => { const server = new XraySecurityAuditServer(); expect(server).toBeInstanceOf(XraySecurityAuditServer); }); }); describe("vulnerability detection", () => { let server: XraySecurityAuditServer; beforeEach(() => { server = new XraySecurityAuditServer(); }); it("should handle injection vulnerabilities", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should handle authentication vulnerabilities", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should handle cryptography issues", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should handle configuration issues", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should handle data protection issues", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); }); describe("compliance checking", () => { let server: XraySecurityAuditServer; beforeEach(() => { server = new XraySecurityAuditServer(); }); it("should check OWASP Top 10 compliance", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); it("should support multiple compliance frameworks", () => { expect(server).toBeInstanceOf(XraySecurityAuditServer); }); }); });