@@ -24,7 +24,7 @@ import (
2424)
2525
2626func TestChatRouteReturns401WithoutBearerToken (t * testing.T ) {
27- handler := MakeChatHandler (nil , nil , nil )
27+ handler := MakeChatHandler (nil , nil , nil , nil , nil )
2828
2929 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
3030 strings .NewReader (`{"model":"Qwen3.7-Max","messages":[]}` ))
@@ -41,7 +41,7 @@ func TestChatRouteReturns401WithoutBearerToken(t *testing.T) {
4141
4242func TestChatRouteRejectsInvalidApiKey (t * testing.T ) {
4343 resolver := func (apiKey string ) * ResolvedBridge { return nil }
44- handler := MakeChatHandler (resolver , nil , nil )
44+ handler := MakeChatHandler (resolver , nil , nil , nil , nil )
4545
4646 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
4747 strings .NewReader (`{"model":"Qwen3.7-Max","messages":[]}` ))
@@ -93,7 +93,7 @@ func TestModelsRouteReturnsAllModels(t *testing.T) {
9393// Unauthorized requests (missing/invalid key) must not be counted.
9494func TestChatRouteDoesNotRecordUnauthorized (t * testing.T ) {
9595 rec := stats .NewRecorder (nil )
96- handler := MakeChatHandler (nil , rec , nil )
96+ handler := MakeChatHandler (nil , rec , nil , nil , nil )
9797
9898 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
9999 strings .NewReader (`{"model":"Qwen3.7-Max","messages":[]}` ))
@@ -112,7 +112,7 @@ func TestChatRouteDoesNotRecordUnauthorized(t *testing.T) {
112112func TestChatRouteDoesNotRecordInvalidJSON (t * testing.T ) {
113113 rec := stats .NewRecorder (nil )
114114 resolver := func (apiKey string ) * ResolvedBridge { return & ResolvedBridge {Bridge : & OpenAiBridge {}} }
115- handler := MakeChatHandler (resolver , rec , nil )
115+ handler := MakeChatHandler (resolver , rec , nil , nil , nil )
116116
117117 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
118118 strings .NewReader (`{"model": ` ))
@@ -690,7 +690,7 @@ func TestChatRouteRejectsMalformedParamTypes(t *testing.T) {
690690 "data: [DONE]" ,
691691 }}
692692 b := newFakeBridge (t , gw )
693- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil )
693+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil , nil , nil )
694694
695695 body := `{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}],"stream":true,"max_tokens":"8000"}`
696696 req := httptest .NewRequest ("POST" , "/v1/chat/completions" , strings .NewReader (body ))
@@ -713,7 +713,7 @@ func TestChatRouteRejectsMultiChoice(t *testing.T) {
713713 "data: [DONE]" ,
714714 }}
715715 b := newFakeBridge (t , gw )
716- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil )
716+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil , nil , nil )
717717
718718 body := `{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}],"stream":true,"n":3}`
719719 req := httptest .NewRequest ("POST" , "/v1/chat/completions" , strings .NewReader (body ))
@@ -855,7 +855,7 @@ func TestHandleStreamProviderErrorSurfacesRealCause(t *testing.T) {
855855 // The failure frames carry no content, so nothing is committed to the
856856 // client and the rejection must surface as a real HTTP status carrying the
857857 // embedded 429 — not a 200 SSE stream whose success every SDK would read.
858- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil )
858+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil , nil , nil )
859859 req := httptest .NewRequest ("POST" , "/v1/chat/completions" , strings .NewReader (
860860 `{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}],"stream":true}` ))
861861 req .Header .Set ("Authorization" , "Bearer sk-test" )
@@ -1205,7 +1205,7 @@ func TestMakeChatHandlerMapsBusyTo429(t *testing.T) {
12051205 gw := & busyGateway {busyFirstN : 99 }
12061206 b := newBusyBridge (t , gw )
12071207
1208- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil )
1208+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil , nil , nil )
12091209
12101210 w := httptest .NewRecorder ()
12111211 req := httptest .NewRequest ("POST" , "/v1/chat/completions" , strings .NewReader (`{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}]}` ))
@@ -1874,7 +1874,7 @@ func TestHandleChatRecordsNonBillableUsage(t *testing.T) {
18741874 b := newFakeBridge (t , gw )
18751875 rec := stats .NewRecorder (nil )
18761876
1877- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, rec , nil )
1877+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, rec , nil , nil , nil )
18781878 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
18791879 strings .NewReader (`{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}]}` ))
18801880 req .Header .Set ("Authorization" , "Bearer sk-test" )
@@ -1910,7 +1910,7 @@ func TestHandleChatAttributesCreditsToRequestedModel(t *testing.T) {
19101910 b := newFakeBridge (t , gw )
19111911 rec := stats .NewRecorder (nil )
19121912
1913- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, rec , nil )
1913+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, rec , nil , nil , nil )
19141914 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
19151915 strings .NewReader (`{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}]}` ))
19161916 req .Header .Set ("Authorization" , "Bearer sk-test" )
@@ -2017,7 +2017,7 @@ func TestMakeChatHandlerMapsUpstreamErrors(t *testing.T) {
20172017 t .Run (tc .name , func (t * testing.T ) {
20182018 gw := & rejectingGateway {status : tc .status , body : tc .body , retryAfter : tc .retryAfter }
20192019 b := newRejectingBridge (t , gw )
2020- handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil )
2020+ handler := MakeChatHandler (func (string ) * ResolvedBridge { return & ResolvedBridge {Bridge : b } }, nil , nil , nil , nil )
20212021
20222022 req := httptest .NewRequest ("POST" , "/v1/chat/completions" ,
20232023 strings .NewReader (`{"model":"Fake-Model","messages":[{"role":"user","content":"hi"}]}` ))
0 commit comments