blob: 06eca5d4fc554f8d4dd1886b5420de63f0af4375 [file] [log] [blame]
// Copyright 2018 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 {session, contextGroup, Protocol} =
InspectorTest.start('Checks hash in Debugger.scriptParsed event');
(async function main() {
Protocol.Debugger.enable();
const tests = [{firstScript: '1', secondScript: '2'}];
for (let length = 1; length <= 10; ++length) {
for (let differentChar = 0; differentChar < length; ++differentChar) {
const firstScript = ' '.repeat(differentChar) + '1' +
' '.repeat(length - differentChar - 1) + ';';
const secondScript = ' '.repeat(differentChar) + '2' +
' '.repeat(length - differentChar - 1) + ';';
tests.push({firstScript, secondScript});
}
}
for (const {firstScript, secondScript} of tests) {
InspectorTest.log(firstScript);
const firstScriptParsed = Protocol.Debugger.onceScriptParsed();
Protocol.Runtime.evaluate({expression: firstScript});
const hash1 = (await firstScriptParsed).params.hash;
InspectorTest.log(secondScript);
const secondScriptParsed = Protocol.Debugger.onceScriptParsed();
Protocol.Runtime.evaluate({expression: secondScript});
const hash2 = (await secondScriptParsed).params.hash;
InspectorTest.log(hash1 === hash2 ? 'Error: the same hash!' : 'PASS');
}
InspectorTest.completeTest();
})();