项目文件夹

文件
2026-07-13 13:39:12 +08:00

32 行
1.3 KiB
TypeScript

此文件含有不可见的 Unicode 字符
此文件含有人类无法区分的不可见的 Unicode 字符,但可以由计算机进行不同的处理。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。
import { test } from "node:test";
import assert from "node:assert/strict";
import { formatAdaptiveTarget } from "../../../src/app/(dashboard)/dashboard/context/settings/adaptiveTargetLabel.ts";
test("formatAdaptiveTarget shows policy + computed target for reserve-output", () => {
const label = formatAdaptiveTarget(
{ mode: "floor", policy: "reserve-output", outputReserve: 4096, safetyMargin: 1024, pct: 0.85, absoluteBudget: 0 },
200000
);
assert.match(label, /reserve-output/);
// 200000 4096 1024 = 194880; tolerate any digit-group separator (locale-dependent toLocaleString).
assert.match(label, /194[.,\s ]?880|194880/);
});
test("formatAdaptiveTarget shows off when disabled", () => {
const label = formatAdaptiveTarget(
{ mode: "off", policy: "reserve-output", outputReserve: 4096, safetyMargin: 1024, pct: 0.85, absoluteBudget: 0 },
200000
);
assert.match(label, /off|disabled/i);
});
test("formatAdaptiveTarget reflects percentage policy target", () => {
const label = formatAdaptiveTarget(
{ mode: "floor", policy: "percentage", outputReserve: 4096, safetyMargin: 1024, pct: 0.7, absoluteBudget: 0 },
200000
);
assert.match(label, /percentage/);
// 200000 × 0.7 = 140000
assert.match(label, /140[.,\s ]?000|140000/);
});