in src/mockDebug.ts [225:248]
protected async launchRequest(response: DebugProtocol.LaunchResponse, args: ILaunchRequestArguments) {
// make sure to 'Stop' the buffered logging if 'trace' is not set
logger.setup(args.trace ? Logger.LogLevel.Verbose : Logger.LogLevel.Stop, false);
// wait 1 second until configuration has finished (and configurationDoneRequest has been called)
await this._configurationDone.wait(1000);
// start the program in the runtime
await this._runtime.start(args.program, !!args.stopOnEntry, !args.noDebug);
if (args.compileError) {
// simulate a compile/build error in "launch" request:
// the error should not result in a modal dialog since 'showUser' is set to false.
// A missing 'showUser' should result in a modal dialog.
this.sendErrorResponse(response, {
id: 1001,
format: `compile error: some fake error.`,
showUser: args.compileError === 'show' ? true : (args.compileError === 'hide' ? false : undefined)
});
} else {
this.sendResponse(response);
}
}