Files
t8y2--dbx/packages/app-tests/dataGridColumnWidth.test.ts
2026-07-13 13:09:14 +08:00

34 lines
1.2 KiB
TypeScript
Vendored

import { expect, test } from "vitest";
import { calculateDataGridColumnWidth, DATA_GRID_AUTO_FIT_VALUE_TEXT_LIMIT, DATA_GRID_COL_AUTO_FIT_MAX_WIDTH, DATA_GRID_COL_MAX_WIDTH } from "../../apps/desktop/src/lib/dataGrid/dataGridColumnWidth.ts";
test("default data grid column width remains compact for long values", () => {
const width = calculateDataGridColumnWidth({
columnName: "description",
sampleValues: ["x".repeat(120)],
});
expect(width).toBe(DATA_GRID_COL_MAX_WIDTH);
});
test("auto-fit data grid column width expands long values beyond default width", () => {
const width = calculateDataGridColumnWidth({
columnName: "description",
sampleValues: ["x".repeat(120)],
maxWidth: DATA_GRID_COL_AUTO_FIT_MAX_WIDTH,
valueTextLimit: DATA_GRID_AUTO_FIT_VALUE_TEXT_LIMIT,
});
expect(width).toBeGreaterThan(DATA_GRID_COL_MAX_WIDTH);
});
test("auto-fit data grid column width stays bounded for very long values", () => {
const width = calculateDataGridColumnWidth({
columnName: "description",
sampleValues: ["x".repeat(1000)],
maxWidth: DATA_GRID_COL_AUTO_FIT_MAX_WIDTH,
valueTextLimit: DATA_GRID_AUTO_FIT_VALUE_TEXT_LIMIT,
});
expect(width).toBe(DATA_GRID_COL_AUTO_FIT_MAX_WIDTH);
});