mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
28 lines
714 B
JavaScript
28 lines
714 B
JavaScript
|
'use strict';
|
||
|
|
||
|
require('../common');
|
||
|
|
||
|
// Regression tests for https://github.com/nodejs/node/issues/40693
|
||
|
|
||
|
const assert = require('assert');
|
||
|
const net = require('net');
|
||
|
const { AsyncLocalStorage } = require('async_hooks');
|
||
|
|
||
|
net
|
||
|
.createServer((socket) => {
|
||
|
socket.write('Hello, world!');
|
||
|
socket.pipe(socket);
|
||
|
})
|
||
|
.listen(0, function() {
|
||
|
const asyncLocalStorage = new AsyncLocalStorage();
|
||
|
const store = { val: 'abcd' };
|
||
|
asyncLocalStorage.run(store, () => {
|
||
|
const client = net.connect({ port: this.address().port });
|
||
|
client.on('data', () => {
|
||
|
assert.deepStrictEqual(asyncLocalStorage.getStore(), store);
|
||
|
client.end();
|
||
|
this.close();
|
||
|
});
|
||
|
});
|
||
|
});
|