Skip to content

Commit 0b1b8a6

Browse files
Cross reference specs and tests
1 parent 38a96cc commit 0b1b8a6

13 files changed

Lines changed: 103 additions & 0 deletions

src/test/e2e/commands.e2e.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ suite("Commands and UI E2E Tests", () => {
8282
await sleep(3000);
8383
});
8484

85+
// Spec: overview
8586
suite("Extension Activation", () => {
8687
test("extension is present", function () {
8788
this.timeout(10000);
@@ -119,6 +120,7 @@ suite("Commands and UI E2E Tests", () => {
119120
});
120121
});
121122

123+
// TODO: No corresponding section in spec
122124
suite("Command Registration", () => {
123125
test("all commands are registered", async function () {
124126
this.timeout(10000);
@@ -166,6 +168,7 @@ suite("Commands and UI E2E Tests", () => {
166168
});
167169
});
168170

171+
// TODO: No corresponding section in spec
169172
suite("Tree View Registration", () => {
170173
test("tree view is registered in custom container", function () {
171174
this.timeout(10000);
@@ -205,6 +208,7 @@ suite("Commands and UI E2E Tests", () => {
205208
});
206209
});
207210

211+
// TODO: No corresponding section in spec
208212
suite("Menu Contributions", () => {
209213
test("view title menu has correct commands", function () {
210214
this.timeout(10000);
@@ -407,6 +411,7 @@ suite("Commands and UI E2E Tests", () => {
407411
});
408412
});
409413

414+
// TODO: No corresponding section in spec
410415
suite("Command Icons", () => {
411416
test("commands have appropriate icons", function () {
412417
this.timeout(10000);
@@ -471,6 +476,7 @@ suite("Commands and UI E2E Tests", () => {
471476
// They had fake assertions (assert.ok(true, ...)) which is ILLEGAL per CLAUDE.md
472477
// Proper tests for these behaviors would require observing actual UI state
473478

479+
// TODO: No corresponding section in spec
474480
suite("Extension Package Configuration", () => {
475481
test("package.json has correct metadata", function () {
476482
this.timeout(10000);
@@ -520,6 +526,7 @@ suite("Commands and UI E2E Tests", () => {
520526
});
521527
});
522528

529+
// TODO: No corresponding section in spec
523530
suite("View Container", () => {
524531
test("views are in custom container", function () {
525532
this.timeout(10000);
@@ -533,6 +540,7 @@ suite("Commands and UI E2E Tests", () => {
533540
});
534541
});
535542

543+
// TODO: No corresponding section in spec
536544
suite("Workspace Trust", () => {
537545
test("extension works in trusted workspace", function () {
538546
this.timeout(10000);

src/test/e2e/configuration.e2e.test.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
/**
2+
* Spec: settings
23
* CONFIGURATION E2E TESTS
34
*
45
* These tests verify extension settings and static configuration.
@@ -44,13 +45,15 @@ function readExtensionPackageJson(): PackageJsonConfig {
4445
) as PackageJsonConfig;
4546
}
4647

48+
// Spec: settings
4749
suite("Configuration and File Watchers E2E Tests", () => {
4850
suiteSetup(async function () {
4951
this.timeout(30000);
5052
await activateExtension();
5153
await sleep(3000);
5254
});
5355

56+
// Spec: settings/exclude-patterns, settings/sort-order
5457
suite("Extension Settings", () => {
5558
test("excludePatterns setting exists", function () {
5659
this.timeout(10000);
@@ -148,6 +151,7 @@ suite("Configuration and File Watchers E2E Tests", () => {
148151
});
149152
});
150153

154+
// Spec: settings/sort-order
151155
suite("Configuration Value Reading", () => {
152156
test("sortOrder config has valid value", function () {
153157
this.timeout(10000);
@@ -189,6 +193,7 @@ suite("Configuration and File Watchers E2E Tests", () => {
189193
});
190194
});
191195

196+
// Spec: tagging/config-file
192197
suite("Tag Configuration", () => {
193198
test("tag config file has correct structure", function () {
194199
this.timeout(10000);
@@ -219,6 +224,7 @@ suite("Configuration and File Watchers E2E Tests", () => {
219224
});
220225
});
221226

227+
// Spec: settings/exclude-patterns
222228
suite("Glob Pattern Matching", () => {
223229
test("exclude patterns use glob syntax", function () {
224230
this.timeout(10000);
@@ -251,6 +257,7 @@ suite("Configuration and File Watchers E2E Tests", () => {
251257
});
252258
});
253259

260+
// TODO: No corresponding section in spec
254261
suite("Multiple Workspace Support", () => {
255262
test("works with single workspace folder", function () {
256263
this.timeout(10000);

src/test/e2e/discovery.e2e.test.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
22
* DISCOVERY E2E TESTS
3+
* Spec: task-discovery
34
*
45
* These tests verify that task source files exist with correct structure.
56
* They do NOT call internal provider methods.
@@ -22,6 +23,7 @@ suite("Task Discovery E2E Tests", () => {
2223
await sleep(3000);
2324
});
2425

26+
// Spec: task-discovery/shell-scripts
2527
suite("Shell Script Discovery", () => {
2628
test("discovers shell scripts in workspace", function () {
2729
this.timeout(10000);
@@ -71,6 +73,7 @@ suite("Task Discovery E2E Tests", () => {
7173
});
7274
});
7375

76+
// Spec: task-discovery/npm-scripts
7477
suite("NPM Script Discovery", () => {
7578
test("discovers npm scripts from root package.json", function () {
7679
this.timeout(10000);
@@ -126,6 +129,7 @@ suite("Task Discovery E2E Tests", () => {
126129
});
127130
});
128131

132+
// Spec: task-discovery/makefile-targets
129133
suite("Makefile Target Discovery", () => {
130134
test("discovers Makefile targets", function () {
131135
this.timeout(10000);
@@ -153,6 +157,7 @@ suite("Task Discovery E2E Tests", () => {
153157
});
154158
});
155159

160+
// Spec: task-discovery/launch-configurations
156161
suite("VS Code Launch Configuration Discovery", () => {
157162
test("discovers launch configurations from launch.json", function () {
158163
this.timeout(10000);
@@ -189,6 +194,7 @@ suite("Task Discovery E2E Tests", () => {
189194
});
190195
});
191196

197+
// Spec: task-discovery/vscode-tasks
192198
suite("VS Code Tasks Discovery", () => {
193199
test("discovers tasks from tasks.json", function () {
194200
this.timeout(10000);
@@ -244,6 +250,7 @@ suite("Task Discovery E2E Tests", () => {
244250
});
245251
});
246252

253+
// Spec: task-discovery/python-scripts
247254
suite("Python Script Discovery", () => {
248255
test("discovers Python scripts with shebang", function () {
249256
this.timeout(10000);
@@ -307,6 +314,7 @@ suite("Task Discovery E2E Tests", () => {
307314
});
308315
});
309316

317+
// TODO: No corresponding section in spec
310318
suite("PowerShell/Batch Script Discovery", () => {
311319
test("discovers PowerShell scripts", function () {
312320
this.timeout(10000);
@@ -339,6 +347,7 @@ suite("Task Discovery E2E Tests", () => {
339347
});
340348
});
341349

350+
// TODO: No corresponding section in spec
342351
suite("Gradle Task Discovery", () => {
343352
test("discovers Gradle tasks from build.gradle", function () {
344353
this.timeout(10000);
@@ -355,6 +364,7 @@ suite("Task Discovery E2E Tests", () => {
355364
});
356365
});
357366

367+
// TODO: No corresponding section in spec
358368
suite("Cargo Task Discovery", () => {
359369
test("discovers Cargo.toml files", function () {
360370
this.timeout(10000);
@@ -368,6 +378,7 @@ suite("Task Discovery E2E Tests", () => {
368378
});
369379
});
370380

381+
// TODO: No corresponding section in spec
371382
suite("Maven Goal Discovery", () => {
372383
test("discovers pom.xml files", function () {
373384
this.timeout(10000);
@@ -380,6 +391,7 @@ suite("Task Discovery E2E Tests", () => {
380391
});
381392
});
382393

394+
// TODO: No corresponding section in spec
383395
suite("Ant Target Discovery", () => {
384396
test("discovers build.xml files", function () {
385397
this.timeout(10000);
@@ -403,6 +415,7 @@ suite("Task Discovery E2E Tests", () => {
403415
});
404416
});
405417

418+
// TODO: No corresponding section in spec
406419
suite("Just Recipe Discovery", () => {
407420
test("discovers justfile recipes", function () {
408421
this.timeout(10000);
@@ -420,6 +433,7 @@ suite("Task Discovery E2E Tests", () => {
420433
});
421434
});
422435

436+
// TODO: No corresponding section in spec
423437
suite("Taskfile Discovery", () => {
424438
test("discovers Taskfile.yml tasks", function () {
425439
this.timeout(10000);
@@ -434,6 +448,7 @@ suite("Task Discovery E2E Tests", () => {
434448
});
435449
});
436450

451+
// TODO: No corresponding section in spec
437452
suite("Deno Task Discovery", () => {
438453
test("discovers deno.json tasks", function () {
439454
this.timeout(10000);
@@ -448,6 +463,7 @@ suite("Task Discovery E2E Tests", () => {
448463
});
449464
});
450465

466+
// TODO: No corresponding section in spec
451467
suite("Rake Task Discovery", () => {
452468
test("discovers Rakefile tasks", function () {
453469
this.timeout(10000);
@@ -465,6 +481,7 @@ suite("Task Discovery E2E Tests", () => {
465481
});
466482
});
467483

484+
// TODO: No corresponding section in spec
468485
suite("Composer Script Discovery", () => {
469486
test("discovers composer.json scripts", function () {
470487
this.timeout(10000);
@@ -479,6 +496,7 @@ suite("Task Discovery E2E Tests", () => {
479496
});
480497
});
481498

499+
// TODO: No corresponding section in spec
482500
suite("Docker Compose Discovery", () => {
483501
test("discovers docker-compose.yml services", function () {
484502
this.timeout(10000);

src/test/e2e/execution.e2e.test.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
22
* EXECUTION E2E TESTS
3+
* Spec: task-execution
34
*
45
* These tests verify command registration and terminal management.
56
* Tests that call provider methods have been moved to execution.unit.test.ts
@@ -21,6 +22,7 @@ interface PackageJson {
2122
scripts?: Record<string, string>;
2223
}
2324

25+
// Spec: task-execution
2426
suite("Task Execution E2E Tests", () => {
2527
let context: TestContext;
2628

@@ -36,6 +38,7 @@ suite("Task Execution E2E Tests", () => {
3638
}
3739
});
3840

41+
// Spec: task-execution/new-terminal
3942
suite("Run Command", () => {
4043
test("run command is registered", async function () {
4144
this.timeout(10000);
@@ -88,6 +91,7 @@ suite("Task Execution E2E Tests", () => {
8891
});
8992
});
9093

94+
// Spec: task-execution/new-terminal
9195
suite("Shell Script Execution", () => {
9296
test("shell scripts exist and are executable format", function () {
9397
this.timeout(10000);
@@ -167,6 +171,7 @@ suite("Task Execution E2E Tests", () => {
167171
});
168172
});
169173

174+
// Spec: task-execution/new-terminal
170175
suite("NPM Script Execution", () => {
171176
test("npm scripts are defined in package.json", function () {
172177
this.timeout(10000);
@@ -219,6 +224,7 @@ suite("Task Execution E2E Tests", () => {
219224
});
220225
});
221226

227+
// Spec: task-execution/new-terminal
222228
suite("Make Target Execution", () => {
223229
test("Makefile targets are defined", function () {
224230
this.timeout(10000);
@@ -256,6 +262,7 @@ suite("Task Execution E2E Tests", () => {
256262
});
257263
});
258264

265+
// Spec: task-execution/debug
259266
suite("Launch Configuration Execution", () => {
260267
test("launch configurations are defined", function () {
261268
this.timeout(10000);
@@ -300,6 +307,7 @@ suite("Task Execution E2E Tests", () => {
300307
});
301308
});
302309

310+
// Spec: task-execution/new-terminal
303311
suite("VS Code Task Execution", () => {
304312
test("VS Code tasks are defined", function () {
305313
this.timeout(10000);
@@ -343,6 +351,7 @@ suite("Task Execution E2E Tests", () => {
343351
});
344352
});
345353

354+
// Spec: parameterized-tasks
346355
suite("Parameter Collection", () => {
347356
test("task with no params executes directly", function () {
348357
this.timeout(10000);
@@ -413,6 +422,7 @@ suite("Task Execution E2E Tests", () => {
413422
});
414423
});
415424

425+
// TODO: No corresponding section in spec
416426
suite("Task Execution Error Handling", () => {
417427
test("handles task cancellation gracefully", function () {
418428
this.timeout(10000);
@@ -432,6 +442,7 @@ suite("Task Execution E2E Tests", () => {
432442
});
433443
});
434444

445+
// Spec: task-execution/new-terminal
435446
suite("Terminal Management", () => {
436447
test("terminals are created for shell tasks", function () {
437448
this.timeout(10000);
@@ -482,6 +493,7 @@ suite("Task Execution E2E Tests", () => {
482493
});
483494
});
484495

496+
// Spec: task-execution/new-terminal
485497
suite("Run Task (New Terminal)", () => {
486498
test("tasktree.run creates a new terminal", async function () {
487499
this.timeout(15000);
@@ -572,6 +584,7 @@ suite("Task Execution E2E Tests", () => {
572584
});
573585
});
574586

587+
// Spec: task-execution/current-terminal
575588
suite("Run In Current Terminal", () => {
576589
test("runInCurrentTerminal command is registered", async function () {
577590
this.timeout(10000);
@@ -693,6 +706,7 @@ suite("Task Execution E2E Tests", () => {
693706
});
694707
});
695708

709+
// Spec: task-execution/debug
696710
suite("Launch Config Execution", () => {
697711
test("launch tasks use debug API", function () {
698712
this.timeout(10000);
@@ -733,6 +747,7 @@ suite("Task Execution E2E Tests", () => {
733747
});
734748
});
735749

750+
// Spec: task-execution
736751
suite("Working Directory Handling", () => {
737752
test("shell tasks use correct cwd", function () {
738753
this.timeout(10000);
@@ -779,6 +794,7 @@ suite("Task Execution E2E Tests", () => {
779794
});
780795
});
781796

797+
// Spec: task-execution
782798
suite("Terminal Execution Modes", () => {
783799
test("runInCurrentTerminal creates terminal when none exists", async function () {
784800
this.timeout(15000);

0 commit comments

Comments
 (0)