xref: /third_party/node/test/abort/test-process-abort-exitcode.js
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/node/test/abort/
11cb0ef41Sopenharmony_ci'use strict';
21cb0ef41Sopenharmony_ciconst common = require('../common');
31cb0ef41Sopenharmony_ciconst assert = require('assert');
41cb0ef41Sopenharmony_ci
51cb0ef41Sopenharmony_ci// This test makes sure that an aborted node process
61cb0ef41Sopenharmony_ci// exits with code 3 on Windows, and SIGABRT on POSIX.
71cb0ef41Sopenharmony_ci// Spawn a child, force an abort, and then check the
81cb0ef41Sopenharmony_ci// exit code in the parent.
91cb0ef41Sopenharmony_ci
101cb0ef41Sopenharmony_ciconst spawn = require('child_process').spawn;
111cb0ef41Sopenharmony_ciif (process.argv[2] === 'child') {
121cb0ef41Sopenharmony_ci  process.abort();
131cb0ef41Sopenharmony_ci} else {
141cb0ef41Sopenharmony_ci  const child = spawn(process.execPath, [__filename, 'child']);
151cb0ef41Sopenharmony_ci  child.on('exit', common.mustCall((code, signal) => {
161cb0ef41Sopenharmony_ci    if (common.isWindows) {
171cb0ef41Sopenharmony_ci      assert.strictEqual(code, 134);
181cb0ef41Sopenharmony_ci      assert.strictEqual(signal, null);
191cb0ef41Sopenharmony_ci    } else {
201cb0ef41Sopenharmony_ci      assert.strictEqual(code, null);
211cb0ef41Sopenharmony_ci      assert.strictEqual(signal, 'SIGABRT');
221cb0ef41Sopenharmony_ci    }
231cb0ef41Sopenharmony_ci  }));
241cb0ef41Sopenharmony_ci}
25

Indexes created Thu Nov 07 10:32:03 CST 2024