
















@@ -70,9 +70,7 @@ describe("computeFilteredUsage", () => {
7070];
7171const result = computeFilteredUsage(baseUsage, points, 1000, 2000);
7272const filtered = expectFilteredUsage(result);
73-expect(filtered).toMatchObject({
74-totalTokens: 300, // 100 + 200
75-});
73+expect(filtered.totalTokens).toBe(300); // 100 + 200
7674expect(filtered.totalCost).toBeCloseTo(0.3); // 0.1 + 0.2
7775});
7876@@ -82,7 +80,7 @@ describe("computeFilteredUsage", () => {
8280makePoint({ timestamp: 2000, totalTokens: 75 }),
8381];
8482const result = computeFilteredUsage(baseUsage, points, 2000, 1000);
85-expect(result).toMatchObject({ totalTokens: 125 });
83+expect(expectFilteredUsage(result).totalTokens).toBe(125);
8684});
87858886it("counts message types based on input/output presence", () => {
@@ -92,13 +90,13 @@ describe("computeFilteredUsage", () => {
9290makePoint({ timestamp: 3000, input: 5, output: 15 }),
9391];
9492const result = expectFilteredUsage(computeFilteredUsage(baseUsage, points, 1000, 3000));
95-expect(result).toMatchObject({
96- messageCounts: {
97- user: 2, // points with input > 0
98- assistant: 2, // points with output > 0
99- total: 3,
100- },
101-});
93+const counts = result.messageCounts;
94+if (!counts) {
95+throw new Error("expected filtered usage to include message counts");
96+}
97+expect(counts.user).toBe(2); // points with input > 0
98+expect(counts.assistant).toBe(2); // points with output > 0
99+expect(counts.total).toBe(3);
102100});
103101104102it("computes duration from first to last filtered point", () => {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。