summaryrefslogtreecommitdiff
path: root/test/parallel/test-debugger-low-level.js
blob: 31f67849f547489edcc04337c74d5e7325ba72cc (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
27
28
29
30
31
32
33
34
35
'use strict';
const common = require('../common');

common.skipIfInspectorDisabled();

const fixtures = require('../common/fixtures');
const startCLI = require('../common/debugger');
const assert = require('assert');

// Debugger agent direct access.
{
  const cli = startCLI(['--port=0', fixtures.path('debugger/three-lines.js')]);
  const scriptPattern = /^\* (\d+): \S+debugger(?:\/|\\)three-lines\.js/m;

  async function testDebuggerLowLevel() {
    try {
      await cli.waitForInitialBreak();
      await cli.waitForPrompt();
      await cli.command('scripts');
      const [, scriptId] = cli.output.match(scriptPattern);
      await cli.command(
        `Debugger.getScriptSource({ scriptId: '${scriptId}' })`
      );
      assert.match(
        cli.output,
        /scriptSource:[ \n]*'(?:\(function \(|let x = 1)/);
      assert.match(
        cli.output,
        /let x = 1;/);
    } finally {
      await cli.quit();
    }
  }
  testDebuggerLowLevel();
}