5759c1862e
M0-M7 已完成:核心网关(身份/RBAC/TOTP/OIDC/SAML/Provider/配额/路由/内容策略/审计/定价)+ 资源市场(MCP/Skills/数字员工)。 含 22 个 PostgreSQL 迁移、管理端/门户端前端源码、OpenAPI 契约、部署 compose。 Co-Authored-By: Claude <noreply@anthropic.com>
22 lines
744 B
Go
22 lines
744 B
Go
package gateway
|
|
|
|
import "testing"
|
|
|
|
func TestUsageCollectorReadsOpenAIJSON(t *testing.T) {
|
|
collector := &usageCollector{}
|
|
collector.feed([]byte(`{"usage":{"prompt_tokens":11,"completion_tokens":7,"total_tokens":18}}`))
|
|
if got := collector.tokens(); got != 18 {
|
|
t.Fatalf("got %d, want 18", got)
|
|
}
|
|
}
|
|
|
|
func TestUsageCollectorReadsChunkedSSEAndAnthropicUsage(t *testing.T) {
|
|
collector := &usageCollector{sse: true}
|
|
collector.feed([]byte("event: message_start\ndata: {\"message\":{\"usage\":{\"input_tokens\":13}}}\n\n"))
|
|
collector.feed([]byte("event: message_delta\ndata: {\"usage\":{\"output_"))
|
|
collector.feed([]byte("tokens\":9}}\n\ndata: [DONE]\n\n"))
|
|
if got := collector.tokens(); got != 22 {
|
|
t.Fatalf("got %d, want 22", got)
|
|
}
|
|
}
|