package middleware import "testing" func TestShouldSkipHTTPLog(t *testing.T) { tests := []struct { name string path string route string status int latencyMs float64 wantSkip bool }{ {name: "轮询未读成功跳过", path: "/api/chats/unread-count", status: 200, latencyMs: 1, wantSkip: true}, {name: "钱包余额成功跳过", path: "/api/wallet/balance", status: 200, latencyMs: 2, wantSkip: true}, {name: "封面成功跳过", path: "/api/listings/12/cover", route: "/api/listings/:id/cover", status: 200, latencyMs: 3, wantSkip: true}, {name: "文件对象成功跳过", path: "/api/files/object", status: 200, latencyMs: 5, wantSkip: true}, {name: "首页配置成功跳过", path: "/api/mobile-home-config", status: 200, latencyMs: 4, wantSkip: true}, {name: "轮询 401 不跳过", path: "/api/chats/unread-count", status: 401, latencyMs: 1, wantSkip: false}, {name: "轮询 500 不跳过", path: "/api/wallet/balance", status: 500, latencyMs: 1, wantSkip: false}, {name: "轮询慢请求不跳过", path: "/api/chats/unread-count", status: 200, latencyMs: 250, wantSkip: false}, {name: "普通业务成功不跳过", path: "/api/orders", status: 200, latencyMs: 20, wantSkip: false}, {name: "下单成功不跳过", path: "/api/orders", status: 201, latencyMs: 30, wantSkip: false}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { got := shouldSkipHTTPLog(tt.path, tt.route, tt.status, tt.latencyMs) if got != tt.wantSkip { t.Fatalf("shouldSkipHTTPLog() = %v, want %v", got, tt.wantSkip) } }) } }