UNPKG

triostack-audit-sdk

Version:

A server-side audit logging middleware for Node.js applications with Express, Fastify, and Koa support. Includes comprehensive test examples and documentation.

89 lines (77 loc) โ€ข 2.6 kB
#!/usr/bin/env node import { createAuditServer } from "../index.js"; console.log("๐Ÿงช Quick Test - Triostack Audit SDK\n"); // Test 1: Create audit server console.log("1๏ธโƒฃ Testing audit server creation..."); try { const auditServer = createAuditServer({ dbUrl: "http://localhost:3002/audit", userIdHeader: "x-user-id", enableGeo: true, onError: (err) => console.error("โŒ Audit Error:", err.message), }); console.log("โœ… Audit server created successfully"); } catch (error) { console.log("โŒ Failed to create audit server:", error.message); process.exit(1); } // Test 2: Test middleware creation console.log("\n2๏ธโƒฃ Testing middleware creation..."); try { const auditServer = createAuditServer({ dbUrl: "http://localhost:3002/audit", }); const middleware = auditServer.expressMiddleware(); console.log("โœ… Express middleware created successfully"); } catch (error) { console.log("โŒ Failed to create middleware:", error.message); process.exit(1); } // Test 3: Test manual tracking console.log("\n3๏ธโƒฃ Testing manual tracking..."); try { const auditServer = createAuditServer({ dbUrl: "http://localhost:3002/audit", }); // Mock request object const mockReq = { headers: { "user-agent": "Test User Agent", "x-user-id": "test-user", }, connection: { remoteAddress: "127.0.0.1" }, socket: { remoteAddress: "127.0.0.1" }, }; const trackPromise = auditServer.track(mockReq, { userId: "test-user", route: "/test", method: "GET", statusCode: 200, duration: 1, }); console.log("โœ… Manual tracking function created successfully"); } catch (error) { console.log("โŒ Failed to create tracking function:", error.message); process.exit(1); } // Test 4: Test Fastify plugin console.log("\n4๏ธโƒฃ Testing Fastify plugin..."); try { const { fastifyAuditPlugin } = await import("../index.js"); console.log("โœ… Fastify plugin imported successfully"); } catch (error) { console.log("โŒ Failed to import Fastify plugin:", error.message); } // Test 5: Test Koa middleware console.log("\n5๏ธโƒฃ Testing Koa middleware..."); try { const { koaAuditMiddleware } = await import("../index.js"); console.log("โœ… Koa middleware imported successfully"); } catch (error) { console.log("โŒ Failed to import Koa middleware:", error.message); } console.log("\n๐ŸŽ‰ All basic tests passed!"); console.log("\n๐Ÿ’ก To run full tests:"); console.log(" npm install"); console.log(" npm run dev"); console.log(" # Then open test-examples/client-test.html in your browser");