46 lines
904 B
JavaScript
46 lines
904 B
JavaScript
const assert = require("node:assert/strict");
|
|
const {
|
|
getSleepLevel,
|
|
getStatusTone,
|
|
pickReportRecord
|
|
} = require("../../tmp/report-tests/report-utils.js");
|
|
|
|
function run(name, fn) {
|
|
try {
|
|
fn();
|
|
console.log(`PASS ${name}`);
|
|
} catch (error) {
|
|
console.error(`FAIL ${name}`);
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
run("getSleepLevel maps score 65 to 合格", () => {
|
|
assert.deepEqual(getSleepLevel(65), {
|
|
label: "合格",
|
|
tone: "warning"
|
|
});
|
|
});
|
|
|
|
run("getStatusTone maps 异常 to danger", () => {
|
|
assert.equal(getStatusTone("异常"), "danger");
|
|
});
|
|
|
|
run("pickReportRecord falls back to first device record", () => {
|
|
const record = pickReportRecord(
|
|
{
|
|
"2026-05-08": {
|
|
roomA: {
|
|
deviceA: { score: 65 },
|
|
deviceB: { score: 79 }
|
|
}
|
|
}
|
|
},
|
|
"2026-05-08",
|
|
"roomA",
|
|
"missing-device"
|
|
);
|
|
|
|
assert.equal(record.score, 65);
|
|
});
|