Skip to content

Commit a75f744

Browse files
arimu1cursoragent
authored andcommitted
test(java): re-enable ModeHandlers exit_plan_mode E2E assertions
Remove the CLI 1.0.57 @disabled workaround and assert the canonical action order (autopilot, interactive, exit_only) plus recommendedAction, matching the other language SDKs after snapshot updates. Fixes #1547 Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent a5f1174 commit a75f744

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

java/src/test/java/com/github/copilot/ModeHandlersTest.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
import static org.junit.jupiter.api.Assertions.*;
88

99
import java.util.HashMap;
10+
import java.util.List;
1011
import java.util.Map;
1112
import java.util.concurrent.CompletableFuture;
1213
import java.util.concurrent.TimeUnit;
1314

1415
import org.junit.jupiter.api.AfterAll;
1516
import org.junit.jupiter.api.BeforeAll;
16-
import org.junit.jupiter.api.Disabled;
1717
import org.junit.jupiter.api.Test;
1818

1919
import com.github.copilot.generated.ExitPlanModeAction;
@@ -68,7 +68,6 @@ private void configureAuthenticatedUser(String testName) throws Exception {
6868
}
6969

7070
@Test
71-
@Disabled("Snapshot needs re-recording for CLI 1.0.57: https://github.com/github/copilot-sdk/issues/1547")
7271
void shouldInvokeExitPlanModeHandlerWhenModelUsesTool() throws Exception {
7372
final String summary = "Greeting file implementation plan";
7473
configureAuthenticatedUser("should_invoke_exit_plan_mode_handler_when_model_uses_tool");
@@ -103,16 +102,19 @@ void shouldInvokeExitPlanModeHandlerWhenModelUsesTool() throws Exception {
103102

104103
var request = handlerCalled.get(10, TimeUnit.SECONDS);
105104
assertEquals(summary, request.getSummary());
106-
assertNotNull(request.getActions());
107-
assertTrue(request.getActions().contains("interactive"));
105+
// Canonical action order after CLI 1.0.57+ (aligned with #2023 / other SDKs).
106+
assertEquals(List.of("autopilot", "interactive", "exit_only"), request.getActions());
107+
assertEquals("interactive", request.getRecommendedAction());
108108
assertNotNull(request.getPlanContent());
109109

110110
var reqEvent = requestedEvent.get(10, TimeUnit.SECONDS);
111111
assertEquals(request.getSummary(), reqEvent.getData().summary());
112+
assertEquals(ExitPlanModeAction.INTERACTIVE, reqEvent.getData().recommendedAction());
112113

113114
var compEvent = completedEvent.get(10, TimeUnit.SECONDS);
114115
assertTrue(compEvent.getData().approved());
115116
assertEquals(ExitPlanModeAction.INTERACTIVE, compEvent.getData().selectedAction());
117+
assertEquals("Approved by the Java E2E test", compEvent.getData().feedback());
116118

117119
assertNotNull(response);
118120

0 commit comments

Comments
 (0)