diff --git a/src/lib/utils/stateMapper.test.ts b/src/lib/utils/stateMapper.test.ts index 575e38b..fd184df 100644 --- a/src/lib/utils/stateMapper.test.ts +++ b/src/lib/utils/stateMapper.test.ts @@ -9,6 +9,8 @@ describe("stateMapper", () => { type: "system", subtype: "init", session_id: "test-session", + cwd: "/home/test", + tools: ["Read", "Write", "Edit"], }; expect(mapMessageToState(message)).toBe("idle"); }); @@ -16,8 +18,7 @@ describe("stateMapper", () => { it("returns null for non-init system messages", () => { const message: ClaudeStreamMessage = { type: "system", - subtype: "other", - session_id: "test-session", + subtype: "compact_boundary", }; expect(mapMessageToState(message)).toBeNull(); }); @@ -26,9 +27,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -39,7 +37,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(mapMessageToState(message)).toBe("searching"); @@ -49,9 +46,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -62,7 +56,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(mapMessageToState(message)).toBe("coding"); @@ -72,9 +65,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -85,7 +75,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(mapMessageToState(message)).toBe("mcp"); @@ -95,9 +84,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -108,7 +94,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(mapMessageToState(message)).toBe("thinking"); @@ -118,13 +103,9 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [{ type: "text", text: "Hello, Naomi!" }], model: "claude-3", stop_reason: "end_turn", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(mapMessageToState(message)).toBe("typing"); @@ -135,7 +116,6 @@ describe("stateMapper", () => { type: "result", subtype: "success", result: "Task completed", - session_id: "test-session", }; expect(mapMessageToState(message)).toBe("success"); }); @@ -144,8 +124,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "result", subtype: "error_max_turns", - error: "Max turns exceeded", - session_id: "test-session", }; expect(mapMessageToState(message)).toBe("error"); }); @@ -153,7 +131,7 @@ describe("stateMapper", () => { it("returns null for user messages", () => { const message: ClaudeStreamMessage = { type: "user", - message: { role: "user", content: "Hello" }, + message: { content: [{ type: "text", text: "Hello" }] }, }; expect(mapMessageToState(message)).toBeNull(); }); @@ -164,16 +142,12 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "text", text: "Hello!" }, { type: "text", text: "How are you?" }, ], model: "claude-3", stop_reason: "end_turn", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(extractTextFromMessage(message)).toBe("Hello!\nHow are you?"); @@ -183,9 +157,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -196,7 +167,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; expect(extractTextFromMessage(message)).toBeNull(); @@ -219,7 +189,6 @@ describe("stateMapper", () => { type: "result", subtype: "success", result: "Completed successfully", - session_id: "test-session", }; expect(extractTextFromMessage(message)).toBe("Completed successfully"); }); @@ -230,9 +199,6 @@ describe("stateMapper", () => { const message: ClaudeStreamMessage = { type: "assistant", message: { - id: "test", - type: "message", - role: "assistant", content: [ { type: "tool_use", @@ -249,7 +215,6 @@ describe("stateMapper", () => { ], model: "claude-3", stop_reason: "tool_use", - usage: { input_tokens: 100, output_tokens: 50 }, }, }; const tools = extractToolInfo(message); @@ -267,7 +232,7 @@ describe("stateMapper", () => { it("returns empty array for non-assistant messages", () => { const message: ClaudeStreamMessage = { type: "user", - message: { role: "user", content: "Hello" }, + message: { content: [{ type: "text", text: "Hello" }] }, }; expect(extractToolInfo(message)).toEqual([]); });