deno.land / std@0.177.1 / node / _tools / test / parallel / test-child-process-execFile-promisified-abortController.js
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364// deno-fmt-ignore-file// deno-lint-ignore-file
// Copyright Joyent and Node contributors. All rights reserved. MIT license.// Taken from Node 18.12.1// This file is automatically generated by "node/_tools/setup.ts". Do not modify this file manually
'use strict';
const common = require('../common');const assert = require('assert');const { promisify } = require('util');const execFile = require('child_process').execFile;const fixtures = require('../common/fixtures');
const echoFixture = fixtures.path('echo.js');const promisified = promisify(execFile);const invalidArgTypeError = { code: 'ERR_INVALID_ARG_TYPE', name: 'TypeError'};
{ // Verify that the signal option works properly const ac = new AbortController(); const signal = ac.signal; const promise = promisified(process.execPath, [echoFixture, 0], { signal });
ac.abort();
assert.rejects( promise, { name: 'AbortError' } ).then(common.mustCall());}
{ // Verify that the signal option works properly when already aborted const signal = AbortSignal.abort();
assert.rejects( promisified(process.execPath, [echoFixture, 0], { signal }), { name: 'AbortError' } ).then(common.mustCall());}
{ // Verify that if something different than Abortcontroller.signal // is passed, ERR_INVALID_ARG_TYPE is thrown const signal = {}; assert.throws(() => { promisified(process.execPath, [echoFixture, 0], { signal }); }, invalidArgTypeError);}
{ // Verify that if something different than Abortcontroller.signal // is passed, ERR_INVALID_ARG_TYPE is thrown const signal = 'world!'; assert.throws(() => { promisified(process.execPath, [echoFixture, 0], { signal }); }, invalidArgTypeError);}
Version Info