/
deka
/
buffer
Обзор
Документация
Войти
/
deka
/
buffer
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
dev
tests/util/format.test.mjs
36 строк
1 KB
Maksim Ratnikov
Extract format util into src/, add build-lab pipeline
08 май 2026, 15:47
08 май 2026, 15:47
9902c7e
Код
Авторство
О чём код?
import assert from "node:assert/strict"; import { escapeHtml, cleanTableText, layoutId, layoutWidths } from "../../src/util/format.js"; // layoutId reads window.crypto.randomUUID; provide a deterministic stub. globalThis.window ??= { crypto: { randomUUID: () => "id-deadbeef" } }; // escapeHtml assert.equal(escapeHtml("a < b & c"), "a < b & c"); assert.equal(escapeHtml('he said "hi"'), "he said "hi""); assert.equal(escapeHtml("it's"), "it's"); assert.equal(escapeHtml(null), ""); assert.equal(escapeHtml(undefined), ""); assert.equal(escapeHtml(0), "0"); // cleanTableText assert.equal(cleanTableText(" a b \nc "), "a b c"); assert.equal(cleanTableText(""), ""); assert.equal(cleanTableText(null), ""); // layoutId assert.equal(layoutId(), "id-deadbeef"); // layoutWidths assert.equal(layoutWidths(undefined, 3), "500,500,500"); const seven = layoutWidths(undefined, 7).split(",").map(Number); assert.equal(seven.length, 7); assert.equal(seven.reduce((a, b) => a + b, 0), 1500); assert.equal(layoutWidths([100, 200, 300], 3), "100,200,300"); assert.equal(layoutWidths("custom", 2), "custom"); console.log("format util tests passed");