mirror of https://github.com/nodejs/node.git
27 lines
790 B
JavaScript
27 lines
790 B
JavaScript
'use strict';
|
|
|
|
require('../common');
|
|
|
|
// Regression tests for https://github.com/nodejs/node/issues/40693
|
|
|
|
const assert = require('assert');
|
|
const dgram = require('dgram');
|
|
const { AsyncLocalStorage } = require('async_hooks');
|
|
|
|
dgram.createSocket('udp4')
|
|
.on('message', function(msg, rinfo) { this.send(msg, rinfo.port); })
|
|
.on('listening', function() {
|
|
const asyncLocalStorage = new AsyncLocalStorage();
|
|
const store = { val: 'abcd' };
|
|
asyncLocalStorage.run(store, () => {
|
|
const client = dgram.createSocket('udp4');
|
|
client.on('message', (msg, rinfo) => {
|
|
assert.deepStrictEqual(asyncLocalStorage.getStore(), store);
|
|
client.close();
|
|
this.close();
|
|
});
|
|
client.send('Hello, world!', this.address().port);
|
|
});
|
|
})
|
|
.bind(0);
|