diff options
author | theanarkh <theratliter@gmail.com> | 2022-06-29 17:58:35 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-29 10:58:35 +0100 |
commit | 8e19dab677e64ec5ba40ab8523d23d02c92a24a2 (patch) | |
tree | 9c4596d82b28c2227ebbc4bb5519291d3cf06090 /test/parallel/test-net-server-keepalive.js | |
parent | e2225ba8e1c00995c0f8bd56e607ea7c5b463ab9 (diff) | |
download | node-new-8e19dab677e64ec5ba40ab8523d23d02c92a24a2.tar.gz |
net: fix net keepalive and noDelay
1. support setKeepAlive again
2. set keepalive and nodelay to socket which is created by server
PR-URL: https://github.com/nodejs/node/pull/43561
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'test/parallel/test-net-server-keepalive.js')
-rw-r--r-- | test/parallel/test-net-server-keepalive.js | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/parallel/test-net-server-keepalive.js b/test/parallel/test-net-server-keepalive.js index 384787d22b..6f3db6468f 100644 --- a/test/parallel/test-net-server-keepalive.js +++ b/test/parallel/test-net-server-keepalive.js @@ -7,6 +7,15 @@ const server = net.createServer({ keepAlive: true, keepAliveInitialDelay: 1000 }, common.mustCall((socket) => { + const setKeepAlive = socket._handle.setKeepAlive; + socket._handle.setKeepAlive = common.mustCall((enable, initialDelay) => { + assert.strictEqual(enable, true); + assert.match(String(initialDelay), /^2|3$/); + return setKeepAlive.call(socket._handle, enable, initialDelay); + }, 2); + socket.setKeepAlive(true, 1000); + socket.setKeepAlive(true, 2000); + socket.setKeepAlive(true, 3000); socket.destroy(); server.close(); })).listen(0, common.mustCall(() => { @@ -20,6 +29,7 @@ server._handle.onconnection = common.mustCall((err, clientHandle) => { assert.strictEqual(enable, server.keepAlive); assert.strictEqual(initialDelayMsecs, server.keepAliveInitialDelay); setKeepAlive.call(clientHandle, enable, initialDelayMsecs); + clientHandle.setKeepAlive = setKeepAlive; }); onconnection.call(server._handle, err, clientHandle); }); |