• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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