27 lines
918 B
JavaScript
27 lines
918 B
JavaScript
import { describe, expect, it } from "vitest";
|
|
|
|
import {
|
|
buildStaticGridRows,
|
|
getGridRowItems,
|
|
} from "../vue/grid/useGridVirtualRows.js";
|
|
|
|
describe("useGridVirtualRows helpers", () => {
|
|
it("builds fixed-width rows from an item list", () => {
|
|
expect(buildStaticGridRows([1, 2, 3, 4, 5], 2)).toEqual([
|
|
{ index: 0, items: [1, 2] },
|
|
{ index: 1, items: [3, 4] },
|
|
{ index: 2, items: [5] },
|
|
]);
|
|
});
|
|
|
|
it("returns items for a virtual row index", () => {
|
|
expect(getGridRowItems(["a", "b", "c", "d"], 1, 3)).toEqual(["d"]);
|
|
expect(getGridRowItems(["a", "b", "c", "d"], 0, 3)).toEqual(["a", "b", "c"]);
|
|
});
|
|
|
|
it("guards invalid column counts", () => {
|
|
expect(buildStaticGridRows([1, 2], 0)).toEqual([{ index: 0, items: [1] }, { index: 1, items: [2] }]);
|
|
expect(getGridRowItems([1, 2], 1, 0)).toEqual([2]);
|
|
});
|
|
});
|