1- import { beforeEach , describe , expect , mock , test } from "bun:test"
1+ import { afterEach , beforeEach , describe , expect , mock , test } from "bun:test"
22import { Hono } from "hono"
33
44import type { AnthropicMessagesPayload } from "../src/routes/messages/anthropic-types"
@@ -36,21 +36,21 @@ const handleWithMessagesApi = mock(
3636 _c : unknown ,
3737 _payload : AnthropicMessagesPayload ,
3838 _options : FlowCallOptions ,
39- ) => new Response ( "messages" ) ,
39+ ) => Promise . resolve ( new Response ( "messages" ) ) ,
4040)
4141const handleWithResponsesApi = mock (
4242 (
4343 _c : unknown ,
4444 _payload : AnthropicMessagesPayload ,
4545 _options : FlowCallOptions ,
46- ) => new Response ( "responses" ) ,
46+ ) => Promise . resolve ( new Response ( "responses" ) ) ,
4747)
4848const handleWithChatCompletions = mock (
4949 (
5050 _c : unknown ,
5151 _payload : AnthropicMessagesPayload ,
5252 _options : FlowCallOptions ,
53- ) => new Response ( "chat" ) ,
53+ ) => Promise . resolve ( new Response ( "chat" ) ) ,
5454)
5555
5656await mock . module ( "~/lib/state" , ( ) => ( {
@@ -73,13 +73,11 @@ await mock.module("~/lib/models", () => ({
7373await mock . module ( "~/lib/utils" , ( ) => ( {
7474 ...actualUtilsModule ,
7575} ) )
76- await mock . module ( "~/routes/messages/api-flows" , ( ) => ( {
77- handleWithMessagesApi,
78- handleWithResponsesApi,
79- handleWithChatCompletions,
80- } ) )
76+ const { handleCompletion, messagesFlowHandlers } = await import (
77+ "../src/routes/messages/handler"
78+ )
8179
82- const { handleCompletion } = await import ( "../src/routes/messages/handler" )
80+ const defaultMessagesFlowHandlers = { ... messagesFlowHandlers }
8381
8482const createApp = ( ) => {
8583 const app = new Hono ( )
@@ -102,12 +100,25 @@ beforeEach(() => {
102100 messagesApiEnabled = true
103101 selectedModel = undefined
104102
103+ messagesFlowHandlers . handleWithMessagesApi = handleWithMessagesApi
104+ messagesFlowHandlers . handleWithResponsesApi = handleWithResponsesApi
105+ messagesFlowHandlers . handleWithChatCompletions = handleWithChatCompletions
106+
105107 findEndpointModel . mockClear ( )
106108 handleWithMessagesApi . mockClear ( )
107109 handleWithResponsesApi . mockClear ( )
108110 handleWithChatCompletions . mockClear ( )
109111} )
110112
113+ afterEach ( ( ) => {
114+ messagesFlowHandlers . handleWithMessagesApi =
115+ defaultMessagesFlowHandlers . handleWithMessagesApi
116+ messagesFlowHandlers . handleWithResponsesApi =
117+ defaultMessagesFlowHandlers . handleWithResponsesApi
118+ messagesFlowHandlers . handleWithChatCompletions =
119+ defaultMessagesFlowHandlers . handleWithChatCompletions
120+ } )
121+
111122describe ( "messages handler orchestration" , ( ) => {
112123 test ( "removes executeCode and rewrites getDiagnostics before forwarding tools" , async ( ) => {
113124 selectedModel = {
0 commit comments