This commit upgrades the project to Node.js 24 (LTS) and performs a major refactoring of the documentation to support both advanced users and AI-based automation (MCP). Changes: - Environment & CI/CD: - Set Node.js version to >=24 in package.json and .nvmrc. - Updated Dockerfile to use Node 24 base image. - Updated @types/node to ^24.10.9. - Documentation: - Refactored README.md with comprehensive technical reference, configuration details, and Zabbix-to-GraphQL mapping. - Created docs/howtos/cookbook.md with practical recipes for common tasks and AI test generation. - Updated docs/howtos/mcp.md to emphasize GraphQL's advantages for AI agents and Model Context Protocol. - Added readme.improvement.plan.md to track documentation evolution. - Enhanced all how-to guides with improved cross-references and up-to-date information. - Guidelines: - Updated .junie/guidelines.md with Node 24 requirements and enhanced commit message standards (Conventional Commits 1.0.0). - Infrastructure & Code: - Updated docker-compose.yml with Apollo MCP server integration. - Refined configuration and schema handling in src/api/ and src/datasources/. - Synchronized generated TypeScript types with schema updates.
19 lines
729 B
TypeScript
19 lines
729 B
TypeScript
// Import after mocking Config
|
|
import {ZABBIX_EDGE_DEVICE_BASE_GROUP, zabbixAPI, zabbixPrivilegeEscalationToken} from "../datasources/zabbix-api.js";
|
|
|
|
// Mocking Config
|
|
jest.mock("../common_utils.js", () => ({
|
|
Config: {
|
|
ZABBIX_EDGE_DEVICE_BASE_GROUP: "CustomEdgeGroup",
|
|
ZABBIX_PRIVILEGE_ESCALATION_TOKEN: "super-secret-token",
|
|
ZABBIX_BASE_URL: "http://custom-zabbix"
|
|
}
|
|
}));
|
|
|
|
describe("Zabbix API Config Mocking", () => {
|
|
test("constants are derived from Config", () => {
|
|
expect(ZABBIX_EDGE_DEVICE_BASE_GROUP).toBe("CustomEdgeGroup");
|
|
expect(zabbixPrivilegeEscalationToken).toBe("super-secret-token");
|
|
expect(zabbixAPI.baseURL).toBe("http://custom-zabbix");
|
|
});
|
|
});
|