fix(network): apply connection timeout in server and extension hosts
Complete the runtime entrypoints from #3404 without changing address-family selection.
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import { test } from 'node:test';
|
||||
import assert from 'node:assert/strict';
|
||||
import * as net from 'node:net';
|
||||
import { applyConnectAttemptTimeout } from './networkDefaults';
|
||||
|
||||
test('allows slow connections without changing address-family selection', () => {
|
||||
const previousTimeout = net.getDefaultAutoSelectFamilyAttemptTimeout();
|
||||
const previousFamily = net.getDefaultAutoSelectFamily();
|
||||
try {
|
||||
net.setDefaultAutoSelectFamilyAttemptTimeout(250);
|
||||
assert.equal(applyConnectAttemptTimeout(), true);
|
||||
assert.equal(net.getDefaultAutoSelectFamilyAttemptTimeout(), 5_000);
|
||||
assert.equal(net.getDefaultAutoSelectFamily(), previousFamily);
|
||||
} finally {
|
||||
net.setDefaultAutoSelectFamilyAttemptTimeout(previousTimeout);
|
||||
}
|
||||
});
|
||||
|
||||
test('unsupported runtimes retain their existing behavior', () => {
|
||||
assert.equal(applyConnectAttemptTimeout({}), false);
|
||||
assert.equal(applyConnectAttemptTimeout({
|
||||
setDefaultAutoSelectFamilyAttemptTimeout() { throw new Error('unsupported'); },
|
||||
}), false);
|
||||
});
|
||||
Reference in New Issue
Block a user