MCPcopy Create free account
hub / github.com/avoidwork/tenso / testRate

Function testRate

tests/unit/middleware-rate.test.js:107–129  ·  view source on GitHub ↗
(req, res, next, overrideParam)

Source from the content-addressed store, hash-verified

105
106 // Mock the rate function to accept override parameter
107 const testRate = (req, res, next, overrideParam) => {
108 const config = req.server.rate;
109 if (config.enabled === false || req.unprotect) {
110 next();
111 } else {
112 const results = req.server.rateLimit(req, overrideParam);
113 const good = results.shift();
114 if (good) {
115 const rateHeaders = [
116 "x-ratelimit-limit",
117 "x-ratelimit-remaining",
118 "x-ratelimit-reset"
119 ];
120 for (const [idx, i] of rateHeaders.entries()) {
121 res.header(i, results[idx]);
122 }
123 next();
124 } else {
125 res.header("retry-after", config.reset);
126 res.error(config.status || 429);
127 }
128 }
129 };
130
131 testRate(mockReq, mockRes, mockNext, override);
132

Callers 1

Calls 2

rateLimitMethod · 0.80
headerMethod · 0.80

Tested by

no test coverage detected