summaryrefslogtreecommitdiff
path: root/test/parallel/test-async-wrap-pop-id-during-load.js
blob: bf75451817164ba991a6d31d59c0e2e0f970d6b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'use strict';

const common = require('../common');

if (process.argv[2] === 'async') {
  common.disableCrashOnUnhandledRejection();
  async function fn() {
    fn();
    throw new Error();
  }
  return (async function() { await fn(); })();
}

const assert = require('assert');
const { spawnSync } = require('child_process');

const ret = spawnSync(
  process.execPath,
  ['--stack_size=150', __filename, 'async'],
  { maxBuffer: Infinity }
);
assert.strictEqual(ret.status, 0,
                   `EXIT CODE: ${ret.status}, STDERR:\n${ret.stderr}`);
const stderr = ret.stderr.toString('utf8', 0, 2048);
assert.ok(!/async.*hook/i.test(stderr));
assert.ok(stderr.includes('Maximum call stack size exceeded'), stderr);