evaluate-repl-mode.js 823 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

let {Protocol} = InspectorTest.start(
  "Tests that Runtime.evaluate works with REPL mode.");

Protocol.Runtime.enable();
(async function() {
  InspectorTest.log("Test 'let' re-declaration");
  evaluateRepl('let x = 21;');
  evaluateRepl('x;');
  evaluateRepl('let x = 42;');
  evaluateRepl('x;');

16 17 18 19
  // Regression test for crbug.com/1040034.
  InspectorTest.log("SyntaxError in REPL mode does not crash the parser");
  evaluateRepl('if (true) const x');

20 21 22 23 24 25 26 27 28
  InspectorTest.completeTest();
})();

async function evaluateRepl(expression) {
  InspectorTest.logMessage(await Protocol.Runtime.evaluate({
    expression: expression,
    replMode: true,
  }));
}