Files
RAG-Lambdas/lib/chunk.test.js
2026-08-12 19:41:32 -04:00

28 lines
908 B
JavaScript

import { describe, it } from "node:test";
import assert from "node:assert/strict";
import { chunkText } from "./chunk.js";
describe("chunkText", () => {
it("returns empty array for blank input", () => {
assert.deepEqual(chunkText(""), []);
assert.deepEqual(chunkText(" "), []);
});
it("keeps short text as a single chunk", () => {
const text = "A short paragraph.";
assert.deepEqual(chunkText(text), [text]);
});
it("splits long text into overlapping chunks under 2000 chars", () => {
const word = "word ";
const text = word.repeat(900);
const chunks = chunkText(text);
assert.ok(chunks.length > 1);
for (const chunk of chunks) {
assert.ok(chunk.length <= 2000);
}
const overlap = chunks[0].slice(-50);
assert.ok(chunks[1].includes(overlap.trim().slice(0, 20)));
});
});