@@ -77,7 +77,7 @@ test("startPlainCli sends message and exits after completion", async () => {
7777 expect ( mockExit ) . toHaveBeenCalledWith ( 0 ) ;
7878} ) ;
7979
80- test ( "onAssistantMessageAdded collects content but doesn't output immediately " , async ( ) => {
80+ test ( "onAssistantMessageAdded outputs content" , async ( ) => {
8181 const mockAgent = {
8282 sendMessage : vi . fn ( ) ,
8383 destroy : vi . fn ( ) ,
@@ -103,15 +103,13 @@ test("onAssistantMessageAdded collects content but doesn't output immediately",
103103 expect ( String ( error ) ) . toContain ( "process.exit called" ) ;
104104 }
105105
106- // Test the onAssistantMessageAdded callback - it should NOT output immediately
106+ // Test the onAssistantMessageAdded callback
107107 capturedCallbacks ?. onAssistantMessageAdded ?.(
108108 "Hello, this is assistant content!" ,
109109 ) ;
110110
111- // Verify that console.log was NOT called during the callback
112- expect ( consoleSpy ) . not . toHaveBeenCalledWith (
113- "Hello, this is assistant content!" ,
114- ) ;
111+ // Verify that console.log was called with the content
112+ expect ( consoleSpy ) . toHaveBeenCalledWith ( "Hello, this is assistant content!" ) ;
115113
116114 consoleSpy . mockRestore ( ) ;
117115} ) ;
@@ -148,49 +146,6 @@ test("startPlainCli works with continue session", async () => {
148146 expect ( mockExit ) . toHaveBeenCalledWith ( 0 ) ;
149147} ) ;
150148
151- test ( "outputs only the last assistant message after sendMessage completes" , async ( ) => {
152- const mockAgent = {
153- sendMessage : vi . fn ( ) ,
154- destroy : vi . fn ( ) ,
155- abortMessage : vi . fn ( ) ,
156- } ;
157-
158- interface AgentCallbacks {
159- onAssistantMessageAdded ?: ( content ?: string ) => void ;
160- }
161-
162- let capturedCallbacks : AgentCallbacks | undefined ;
163- vi . mocked ( Agent . create ) . mockImplementation ( async ( options ) => {
164- capturedCallbacks = options . callbacks ;
165- return mockAgent as unknown as Agent ;
166- } ) ;
167-
168- const consoleSpy = vi . spyOn ( console , "log" ) . mockImplementation ( ( ) => { } ) ;
169-
170- // Simulate multiple assistant messages during sendMessage
171- mockAgent . sendMessage . mockImplementation ( async ( ) => {
172- // Simulate first assistant message
173- capturedCallbacks ?. onAssistantMessageAdded ?.( "First message" ) ;
174- // Simulate second assistant message
175- capturedCallbacks ?. onAssistantMessageAdded ?.( "Second message" ) ;
176- // Simulate final assistant message
177- capturedCallbacks ?. onAssistantMessageAdded ?.( "Final message" ) ;
178- } ) ;
179-
180- try {
181- await startPlainCli ( { message : "test message" } ) ;
182- } catch ( error ) {
183- // Expected when process.exit is called
184- expect ( String ( error ) ) . toContain ( "process.exit called" ) ;
185- }
186-
187- // Verify that only the last message was output
188- expect ( consoleSpy ) . toHaveBeenCalledTimes ( 1 ) ;
189- expect ( consoleSpy ) . toHaveBeenCalledWith ( "Final message" ) ;
190-
191- consoleSpy . mockRestore ( ) ;
192- } ) ;
193-
194149afterEach ( ( ) => {
195150 vi . clearAllMocks ( ) ;
196151 mockExit . mockClear ( ) ;
0 commit comments