@@ -26,6 +26,7 @@ import (
2626
2727 logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/common/util/logging"
2828 "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/datalayer"
29+ handlerstypes "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/handlers/types"
2930 "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/metadata"
3031)
3132
@@ -119,13 +120,13 @@ func TestHandleResponseBody(t *testing.T) {
119120 name string
120121 body []byte
121122 reqCtx * RequestContext
122- want Usage
123+ want handlerstypes. Usage
123124 wantErr bool
124125 }{
125126 {
126127 name : "success" ,
127128 body : []byte (body ),
128- want : Usage {
129+ want : handlerstypes. Usage {
129130 PromptTokens : 11 ,
130131 TotalTokens : 111 ,
131132 CompletionTokens : 100 ,
@@ -134,11 +135,11 @@ func TestHandleResponseBody(t *testing.T) {
134135 {
135136 name : "success with cached tokens" ,
136137 body : []byte (bodyWithCachedTokens ),
137- want : Usage {
138+ want : handlerstypes. Usage {
138139 PromptTokens : 11 ,
139140 TotalTokens : 111 ,
140141 CompletionTokens : 100 ,
141- PromptTokenDetails : & PromptTokenDetails {
142+ PromptTokenDetails : & handlerstypes. PromptTokenDetails {
142143 CachedTokens : 10 ,
143144 },
144145 },
@@ -179,7 +180,7 @@ func TestHandleStreamedResponseBody(t *testing.T) {
179180 name string
180181 body string
181182 reqCtx * RequestContext
182- want Usage
183+ want handlerstypes. Usage
183184 wantErr bool
184185 }{
185186 {
@@ -198,7 +199,7 @@ func TestHandleStreamedResponseBody(t *testing.T) {
198199 modelServerStreaming : true ,
199200 },
200201 wantErr : false ,
201- want : Usage {
202+ want : handlerstypes. Usage {
202203 PromptTokens : 7 ,
203204 TotalTokens : 17 ,
204205 CompletionTokens : 10 ,
@@ -211,11 +212,11 @@ func TestHandleStreamedResponseBody(t *testing.T) {
211212 modelServerStreaming : true ,
212213 },
213214 wantErr : false ,
214- want : Usage {
215+ want : handlerstypes. Usage {
215216 PromptTokens : 7 ,
216217 TotalTokens : 17 ,
217218 CompletionTokens : 10 ,
218- PromptTokenDetails : & PromptTokenDetails {
219+ PromptTokenDetails : & handlerstypes. PromptTokenDetails {
219220 CachedTokens : 5 ,
220221 },
221222 },
@@ -245,14 +246,14 @@ func TestHandleResponseBodyModelStreaming_TokenAccumulation(t *testing.T) {
245246 tests := []struct {
246247 name string
247248 chunks []string
248- wantUsage Usage
249+ wantUsage handlerstypes. Usage
249250 }{
250251 {
251252 name : "Standard: Usage and DONE in same chunk" ,
252253 chunks : []string {
253254 `data: {"usage":{"prompt_tokens":5,"completion_tokens":10,"total_tokens":15}}` + "\n " + `data: [DONE]` ,
254255 },
255- wantUsage : Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
256+ wantUsage : handlerstypes. Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
256257 },
257258 {
258259 name : "Split: Usage in Chunk 1, DONE in Chunk 2" ,
@@ -262,7 +263,7 @@ func TestHandleResponseBodyModelStreaming_TokenAccumulation(t *testing.T) {
262263 // Chunk 2: Stream termination. Should NOT overwrite the usage from Chunk 1.
263264 `data: [DONE]` ,
264265 },
265- wantUsage : Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
266+ wantUsage : handlerstypes. Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
266267 },
267268 {
268269 name : "Fragmented: Content -> Usage -> DONE" ,
@@ -271,15 +272,15 @@ func TestHandleResponseBodyModelStreaming_TokenAccumulation(t *testing.T) {
271272 `data: {"usage":{"prompt_tokens":5,"completion_tokens":10,"total_tokens":15}}` + "\n " ,
272273 `data: [DONE]` ,
273274 },
274- wantUsage : Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
275+ wantUsage : handlerstypes. Usage {PromptTokens : 5 , CompletionTokens : 10 , TotalTokens : 15 },
275276 },
276277 {
277278 name : "No Usage Data" ,
278279 chunks : []string {
279280 `data: {"choices":[{"text":"Hello"}]}` + "\n " ,
280281 `data: [DONE]` ,
281282 },
282- wantUsage : Usage {}, // Zero values
283+ wantUsage : handlerstypes. Usage {}, // Zero values
283284 },
284285 }
285286
0 commit comments