| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent c66af21 commit d5b0a64
1 file changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -3,6 +3,10 @@ import assert from 'node:assert'; | |||
| 3 | 3 | import { createServer } from 'node:http'; | |
| 4 | 4 | import { connect } from 'node:net'; | |
| 5 | 5 | ||
| 6 | + // This test ensures that data like an empty line (`\r\n`) recevied by the | ||
| 7 | + // server after a request, does not reset the keep-alive timeout. See | ||
| 8 | + // https://github.com/nodejs/node/issues/58140. | ||
| 9 | + | ||
| 6 | 10 | const server = createServer({ | |
| 7 | 11 | connectionsCheckingInterval: 100, | |
| 8 | 12 | headersTimeout: 100, | |
@@ -28,23 +32,24 @@ server.listen(0, () => { | |||
| 28 | 32 | '\r\n' | |
| 29 | 33 | ); | |
| 30 | 34 | ||
| 31 | - setTimeout(() => { | ||
| 32 | - client.write('\r\n'); | ||
| 33 | - }, 100); | ||
| 34 | - | ||
| 35 | - let responseBuffer = ''; | ||
| 35 | + let response = ''; | ||
| 36 | + let responseReceived = false; | ||
| 36 | 37 | ||
| 38 | + client.setEncoding('utf-8'); | ||
| 37 | 39 | client.on('data', (chunk) => { | |
| 38 | - responseBuffer += chunk.toString(); | ||
| 40 | + response += chunk; | ||
| 39 | 41 | ||
| 40 | 42 | // Check if we've received the full header (ending with \r\n\r\n) | |
| 41 | - if (responseBuffer.includes('\r\n\r\n')) { | ||
| 42 | - const statusLine = responseBuffer.split('\r\n')[0]; | ||
| 43 | + if (response.includes('\r\n\r\n')) { | ||
| 44 | + responseReceived = true; | ||
| 45 | + const statusLine = response.split('\r\n')[0]; | ||
| 43 | 46 | const status = statusLine.split(' ')[1]; | |
| 44 | 47 | assert.strictEqual(status, '404'); | |
| 45 | - client.end(); | ||
| 48 | + client.write('\r\n'); | ||
| 46 | 49 | } | |
| 47 | 50 | }); | |
| 48 | - client.on('end', common.mustCall()); | ||
| 51 | + client.on('end', common.mustCall(() => { | ||
| 52 | + assert.ok(responseReceived); | ||
| 53 | + })); | ||
| 49 | 54 | }); | |
| 50 | 55 | }); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments