diff --git a/src/debug.ts b/src/debug.ts index 8db2f0d..5ad4721 100644 --- a/src/debug.ts +++ b/src/debug.ts @@ -24,6 +24,8 @@ export function debugYaml(pykisoConfigPath: vscode.Uri) { module: "pykiso", justMyCode: false, args: ["-c", pykisoConfigPath.fsPath], + cwd: pykisoConfigPath.path.substring(0, pykisoConfigPath.path.lastIndexOf('/')), + purpose: ["debug-in-terminal"] }; vscode.debug.startDebugging(workspaceFolder, pykisoDebugConfig); diff --git a/src/pykisoRunner.ts b/src/pykisoRunner.ts index 79f21f8..a8f55b6 100644 --- a/src/pykisoRunner.ts +++ b/src/pykisoRunner.ts @@ -23,17 +23,25 @@ export class PykisoRunner { var activeFile = filePath!.split("\\").pop()!.split("/").pop(); this.updatePythonInterpreter(); + var filePathUri = vscode.Uri.parse(filePath); + if (!debug) { - var terminal = vscode.window.createTerminal( - `Pykiso #${this.nextTermID++} ${activeFile}` - ); + const terminalOptions = { + name: `Pykiso #${this.nextTermID++} ${activeFile}`, + cwd: filePathUri.path.substring(0, filePathUri.path.lastIndexOf('/')), + }; + + var terminal = vscode.window.createTerminal(terminalOptions); terminal.sendText( `${this.pythonInterpreterPath} -m pykiso -c \"${filePath}\"` ); } else { - var terminal = vscode.window.createTerminal( - `Pykiso DEBUG #${this.nextTermID++} ${activeFile}` - ); + const terminalOptions = { + name: `Pykiso DEBUG #${this.nextTermID++} ${activeFile}`, + cwd: filePathUri.path.substring(0, filePathUri.path.lastIndexOf('/')), + }; + + var terminal = vscode.window.createTerminal(terminalOptions); terminal.sendText( `${this.pythonInterpreterPath} -m pykiso -c \"${filePath}\" --log-level DEBUG` ); diff --git a/src/test/suite/extension.test.ts b/src/test/suite/extension.test.ts index fb8fbb2..b4fd829 100644 --- a/src/test/suite/extension.test.ts +++ b/src/test/suite/extension.test.ts @@ -37,7 +37,7 @@ suite("Extension Test Suite", () => { assert(stubUpdatePythonInterpreter.calledOnce); assert(stubCreateTerminal.calledOnce); - expect(stubCreateTerminal).to.be.called.calledWith("Pykiso #1 dummy.yaml"); + expect(stubCreateTerminal).to.be.called.calledWith({ name: 'Pykiso #1 dummy.yaml', cwd: '' }); expect(stubTerminal.sendText).to.be.called.calledWith( 'C:/Python -m pykiso -c "/dummy.yaml"' ); @@ -66,8 +66,8 @@ suite("Extension Test Suite", () => { assert(stubUpdatePythonInterpreter.calledTwice); assert(stubCreateTerminal.calledTwice); expect(stubCreateTerminal) - .to.be.called.calledWith("Pykiso DEBUG #1 dummy.yaml") - .calledWith("Pykiso DEBUG #2 dummy.yaml"); + .to.be.called.calledWith({ name: 'Pykiso DEBUG #1 dummy.yaml', cwd: '' }) + .calledWith({ name: 'Pykiso DEBUG #2 dummy.yaml', cwd: '/somePath' }); expect(stubTerminal.sendText).to.be.called.calledWith( 'C:/Python -m pykiso -c "/dummy.yaml" --log-level DEBUG'