test(e2e): add Phase C plans — project create, export jar, delete permanently#1029
Open
wenytang-ms wants to merge 1 commit into
Open
test(e2e): add Phase C plans — project create, export jar, delete permanently#1029wenytang-ms wants to merge 1 commit into
wenytang-ms wants to merge 1 commit into
Conversation
…manently
Adds three new E2E test plans that cover the remaining high-value
Java Manager commands not yet exercised by Phase A or Phase B:
- test/e2e-plans/java-dep-project-creation.yaml
Covers java.project.create — the flagship "Java: Create Java
Project..." wizard, exercised on the "No build tools" branch
(the only project type whose scaffolding lives in this repo;
every other type delegates to a third-party extension).
Asserts on-disk presence of the scaffolded template files.
- test/e2e-plans/java-dep-export-jar.yaml
Covers java.view.package.exportJar — the multi-step Export Jar
wizard. Pins java.project.exportJar.targetPath via user settings
so the showSaveDialog branch is skipped, then asserts the jar
file exists at the configured target path after the Jdtls
generation step finishes.
- test/e2e-plans/java-dep-delete-permanent.yaml
Covers java.view.package.deleteFilePermanently — the non-trash
branch of file removal. Has no plain-click UI affordance for
regular local files (the context menu and delete keybinding
are both gated on !explorerResourceMoveableToTrash), so the
command is invoked directly by id with tree-selection fallback,
same pattern as removeLibrary in the classpath plan.
All three plans pass locally (45/45 new steps). Full suite remains
green across 11 plans / 308 steps.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phase C of the E2E test-plan coverage push, building on PRs #1027 and #1028.
What this PR adds
Three new YAML plans under \ est/e2e-plans/\ that cover the remaining high-value Java Manager commands not yet exercised by Phase A (lifecycle / new types / file ops / view modes / project explorer) or Phase B (referenced libraries):
After this PR, ~85% of the extension's contributed commands are covered by deterministic E2E plans. The remaining uncovered surface is either trivial (\copyFilePath\ / \copyRelativeFilePath\ — clipboard ops needing autotest helper extension) or out of scope (
evealFileInOS\ — no in-VS-Code state to assert).
Design notes
emoveLibrary\ uses in the classpath plan.
Verification
Locally green:
\
✅ Auto-refresh targeted (#914): 16/16
✅ Build Lifecycle: 26/26
✅ Classpath / Referenced Libraries: 33/33
✅ Permanent Delete (NEW): 16/16
✅ Export Jar (NEW): 14/14
✅ File Operations: 41/41
✅ New File Types: 75/75
✅ Create Project (NEW): 15/15
✅ Project Explorer: 21/21
✅ Refresh Generated Files (#914): 21/21
✅ View Modes & Refresh: 30/30
Total: 11 plans / 308 steps — 0 failures, 0 crashes
\\
CI auto-discovers plans via the \discover-plans\ matrix in .github/workflows/e2eUI.yml, so no workflow changes are required.