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

Function testRequestProcessing

benchmarks/memory.js:152–221  ·  view source on GitHub ↗

* Tests request processing memory usage

()

Source from the content-addressed store, hash-verified

150 * Tests request processing memory usage
151 */
152async function testRequestProcessing () {
153 console.log("🔥 Request Processing Memory Test");
154 console.log("-".repeat(50));
155
156 const monitor = new MemoryMonitor();
157 const server = tenso({
158 port: 0,
159 silent: true,
160 logging: { enabled: false },
161 auth: { protect: [] },
162 rate: { enabled: false },
163 security: { csrf: false }
164 });
165
166 // Add test routes
167 server.get("/test", (req, res) => {
168 res.send({ message: "Hello World", timestamp: Date.now() });
169 });
170
171 server.post("/echo", (req, res) => {
172 res.send(req.body);
173 });
174
175 monitor.snapshot("Server created");
176
177 // Simulate request processing
178 const requests = 1000;
179 const testData = {
180 users: Array.from({ length: 100 }, (_, i) => ({
181 id: i,
182 name: `User ${i}`,
183 email: `user${i}@example.com`
184 }))
185 };
186
187 monitor.snapshot("Before request simulation");
188
189 for (let i = 0; i < requests; i++) {
190 // Simulate request object
191 const req = {
192 method: "GET",
193 url: "/test",
194 headers: { accept: "application/json" },
195 parsed: { searchParams: new URLSearchParams() },
196 server: server,
197 body: ""
198 };
199
200 // Simulate response object
201 const res = {
202 statusCode: 200,
203 headers: {},
204 getHeader: name => res.headers[name],
205 removeHeader: name => delete res.headers[name],
206 header: (name, value) => res.headers[name] = value, // eslint-disable-line no-return-assign
207 getHeaders: () => res.headers
208 };
209

Callers 1

mainFunction · 0.85

Calls 6

snapshotMethod · 0.95
forceGCMethod · 0.95
reportMethod · 0.95
tensoFunction · 0.90
logMethod · 0.80
renderMethod · 0.80

Tested by

no test coverage detected