1// Flags: --experimental-abortcontroller 2'use strict'; 3 4const common = require('../common'); 5const assert = require('assert'); 6const dgram = require('dgram'); 7 8{ 9 // Test bad signal. 10 assert.throws( 11 () => dgram.createSocket({ type: 'udp4', signal: {} }), 12 { 13 code: 'ERR_INVALID_ARG_TYPE', 14 name: 'TypeError' 15 }); 16} 17 18{ 19 // Test close. 20 const controller = new AbortController(); 21 const { signal } = controller; 22 const server = dgram.createSocket({ type: 'udp4', signal }); 23 server.on('close', common.mustCall()); 24 controller.abort(); 25} 26 27{ 28 // Test close with pre-aborted signal. 29 const controller = new AbortController(); 30 controller.abort(); 31 const { signal } = controller; 32 const server = dgram.createSocket({ type: 'udp4', signal }); 33 server.on('close', common.mustCall()); 34} 35