From 76cee17417f6ffce5078aff5fdac8380e0322a2a Mon Sep 17 00:00:00 2001 From: Taylor Mullen Date: Sat, 31 May 2025 01:22:23 -0700 Subject: [PATCH] Refactor: Generalize VSCode launch configuration for debugging tests - Consolidates multiple specific test debug configurations into a single, more flexible configuration named "Debug Test File". - Introduces an input variable `testFile` to prompt the user for the specific test file path, defaulting to a sample test file. - This change simplifies the launch configuration and makes it easier to debug any test file without needing a dedicated configuration for each. --- .vscode/launch.json | 174 +++----------------------------------------- 1 file changed, 11 insertions(+), 163 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 83543bfc..e159f093 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -26,182 +26,30 @@ { "type": "node", "request": "launch", - "name": "Debug CLI Test: text-buffer", + "name": "Debug Test File", "runtimeExecutable": "npm", "runtimeArgs": [ "run", "test", "-w", - "packages/cli", + "packages/cli", // Default to CLI, change if needed or prompt for package "--", "--inspect-brk=9229", "--no-file-parallelism", - "${workspaceFolder}/packages/cli/src/ui/components/shared/text-buffer.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug Server Test: read-many-files", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/core", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/core/src/tools/read-many-files.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug CLI Test: atCommandProcessor", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/cli", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/cli/src/ui/hooks/atCommandProcessor.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug Server Test: read-file", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/core", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/core/src/tools/read-file.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug Server Test: turn", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/core", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/core/src/core/turn.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug Server Test: fileUtils", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/core", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/core/src/utils/fileUtils.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug useLoadingIndicator Test (CLI)", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/cli", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/cli/src/ui/hooks/useLoadingIndicator.test.ts" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug LoadingIndicator Test (CLI)", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/cli", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/cli/src/ui/components/LoadingIndicator.test.tsx" - ], - "cwd": "${workspaceFolder}", - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen", - "skipFiles": ["/**"] - }, - { - "type": "node", - "request": "launch", - "name": "Debug CLI Test: useGeminiStream", - "runtimeExecutable": "npm", - "runtimeArgs": [ - "run", - "test", - "-w", - "packages/cli", - "--", - "--inspect-brk=9229", - "--no-file-parallelism", - "${workspaceFolder}/packages/cli/src/ui/hooks/useGeminiStream.test.tsx" + "${input:testFile}" ], "cwd": "${workspaceFolder}", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen", "skipFiles": ["/**"] } + ], + "inputs": [ + { + "id": "testFile", + "type": "promptString", + "description": "Enter the path to the test file (e.g., ${workspaceFolder}/packages/cli/src/ui/components/LoadingIndicator.test.tsx)", + "default": "${workspaceFolder}/packages/cli/src/ui/components/LoadingIndicator.test.tsx" + } ] }