MCPcopy Create free account
hub / github.com/coder/coder / TestAccumulateUsage

Function TestAccumulateUsage

aibridge/intercept/messages/base_internal_test.go:304–467  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

302}
303
304func TestAccumulateUsage(t *testing.T) {
305 t.Parallel()
306
307 t.Run("Usage to Usage", func(t *testing.T) {
308 t.Parallel()
309 dest := &anthropic.Usage{
310 InputTokens: 10,
311 OutputTokens: 20,
312 CacheCreationInputTokens: 5,
313 CacheReadInputTokens: 3,
314 CacheCreation: anthropic.CacheCreation{
315 Ephemeral1hInputTokens: 2,
316 Ephemeral5mInputTokens: 1,
317 },
318 ServerToolUse: anthropic.ServerToolUsage{
319 WebSearchRequests: 1,
320 },
321 }
322
323 source := anthropic.Usage{
324 InputTokens: 15,
325 OutputTokens: 25,
326 CacheCreationInputTokens: 8,
327 CacheReadInputTokens: 4,
328 CacheCreation: anthropic.CacheCreation{
329 Ephemeral1hInputTokens: 3,
330 Ephemeral5mInputTokens: 2,
331 },
332 ServerToolUse: anthropic.ServerToolUsage{
333 WebSearchRequests: 2,
334 },
335 }
336
337 accumulateUsage(dest, source)
338
339 require.EqualValues(t, 25, dest.InputTokens)
340 require.EqualValues(t, 45, dest.OutputTokens)
341 require.EqualValues(t, 13, dest.CacheCreationInputTokens)
342 require.EqualValues(t, 7, dest.CacheReadInputTokens)
343 require.EqualValues(t, 5, dest.CacheCreation.Ephemeral1hInputTokens)
344 require.EqualValues(t, 3, dest.CacheCreation.Ephemeral5mInputTokens)
345 require.EqualValues(t, 3, dest.ServerToolUse.WebSearchRequests)
346 })
347
348 t.Run("MessageDeltaUsage to MessageDeltaUsage", func(t *testing.T) {
349 t.Parallel()
350
351 dest := &anthropic.MessageDeltaUsage{
352 InputTokens: 10,
353 OutputTokens: 20,
354 CacheCreationInputTokens: 5,
355 CacheReadInputTokens: 3,
356 ServerToolUse: anthropic.ServerToolUsage{
357 WebSearchRequests: 1,
358 },
359 }
360
361 source := anthropic.MessageDeltaUsage{

Callers

nothing calls this directly

Calls 2

accumulateUsageFunction · 0.85
RunMethod · 0.65

Tested by

no test coverage detected