| // Copyright 2017 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 that Debugger.setScriptSource doesn\'t crash with modules'); | |
| var module1 = ` | |
| export function foo() { | |
| return 42; | |
| }`; | |
| var editedModule1 = ` | |
| export function foo() { | |
| return 239; | |
| }`; | |
| var module2 = ` | |
| import { foo } from 'module1'; | |
| console.log(foo()); | |
| `; | |
| var module1Id; | |
| Protocol.Debugger.onScriptParsed(message => { | |
| if (message.params.url === 'module1') | |
| module1Id = message.params.scriptId; | |
| }); | |
| Protocol.Debugger.enable() | |
| .then(() => contextGroup.addModule(module1, 'module1')) | |
| .then(() => contextGroup.addModule(module2, 'module2')) | |
| .then(() => InspectorTest.waitForPendingTasks()) | |
| .then(() => Protocol.Debugger.setScriptSource({ scriptId: module1Id, scriptSource: editedModule1 })) | |
| .then(InspectorTest.logMessage) | |
| .then(InspectorTest.completeTest); |