-
Notifications
You must be signed in to change notification settings - Fork 162
Expand file tree
/
Copy pathjava-single-no-workspace.yaml
More file actions
69 lines (61 loc) · 3.08 KB
/
Copy pathjava-single-no-workspace.yaml
File metadata and controls
69 lines (61 loc) · 3.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Test Plan: Single File Without Workspace (from vscode-java-pack.wiki)
#
# Source: wiki Test-Plan.md "Single file without workspace" scenario
# Verify: Open a single Java file without workspace → LS ready → editing experience works
#
# Prerequisites:
# - vscode-java repo cloned locally
# - JDK installed and available
#
# Usage: autotest run test-plans/java-single-no-workspace.yaml
name: "Java Single File Without Workspace — Single File Without Workspace"
description: |
Corresponds to the Single file without workspace scenario in the wiki Test Plan:
Directly open a Java file without a workspace,
verify LS works normally and basic editing features are available.
setup:
extension: "redhat.java"
extensions:
- "vscjava.vscode-java-pack"
vscodeVersion: "stable"
# Single file mode — no workspace, just open one file
file: "../../vscode-java/test/resources/projects/eclipse/simple-app/src/app/App.java"
timeout: 60
steps:
# ── Step 1: Wait for LS ready ────────────────────────────────
# wiki: "Wait for Java extension to be ready (the status bar icon is 👍)."
- id: "ls-ready"
action: "waitForLanguageServer"
verify: "Java extension has activated for the single-file (no-workspace) mode; no error notifications visible"
timeout: 120
skipLlmVerify: true # waitForLanguageServer is authoritative; LLM only sees the same status bar
# ── Step 2: Verify file is open ──────────────────────────────
- id: "verify-file-open"
action: "wait 3 seconds"
verify: "App.java is open"
verifyEditor:
contains: "Hello Java"
# ── Step 3: Verify basic editing features ────────────────────────────
# wiki: "Try the basic editing features in App.java, they should work."
# LS may briefly re-enter Searching after Ready; wait before triggering completion.
# verifyCompletion.notEmpty is the deterministic ground truth; verify
# text is lenient because the popup may still render "Loading..." while
# items are already available via the completion API.
- id: "verify-completion"
action: "triggerCompletionAt endOfMethod"
verify: "Code completion has been triggered in App.java; the IntelliSense popup is being rendered (the language server may briefly show a 'Loading...' indicator while computing suggestions on a cold cache — this is a valid intermediate state since the deterministic verifyCompletion.notEmpty asserts the LS produced completion items)"
verifyCompletion:
notEmpty: true
waitBefore: 8
timeout: 30
# Retry once on cold-cache "Loading..." LLM downgrades.
retries: 1
# ── Step 4: Verify editing ────────────────────────────────────
- id: "goto-line"
action: "goToLine 5"
- id: "goto-end"
action: "goToEndOfLine"
- id: "type-code"
action: "typeInEditor // no-workspace test"
verifyEditor:
contains: "// no-workspace test"