UNPKG

@aikidosec/firewall

Version:

Zen by Aikido is an embedded Application Firewall that autonomously protects Node.js apps against common and critical attacks, provides rate limiting, detects malicious traffic (including bots), and more.

21 lines (20 loc) 955 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.startTestAgent = startTestAgent; const wrapRequire_1 = require("../agent/hooks/wrapRequire"); const createTestAgent_1 = require("./createTestAgent"); /** * Start a test agent for testing purposes */ function startTestAgent(opts) { const agent = (0, createTestAgent_1.createTestAgent)(opts); agent.start(opts.wrappers); // In order to support multiple versions of the same package, we need to rewrite the package name // e.g. In our sources and sinks, we use the real package name `hooks.addPackage("undici")` // but in the tests we want to `require("undici-v6")` instead of `require("undici")` // The `__internalRewritePackageName` function allows us to do this Object.keys(opts.rewrite).forEach((packageName) => { (0, wrapRequire_1.__internalRewritePackageName)(packageName, opts.rewrite[packageName]); }); return agent; }