Updates
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import { describe, expect, test } from "bun:test";
|
||||
import twuiNormalizeText from "./normalize-text";
|
||||
|
||||
describe("twuiNormalizeText", () => {
|
||||
test("collapses multiple spaces", () => {
|
||||
expect(twuiNormalizeText("hello world")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("replaces newlines with spaces", () => {
|
||||
expect(twuiNormalizeText("hello\nworld")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("replaces carriage returns with spaces", () => {
|
||||
expect(twuiNormalizeText("hello\rworld")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("replaces CRLF with spaces", () => {
|
||||
expect(twuiNormalizeText("hello\r\nworld")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("trims leading and trailing whitespace", () => {
|
||||
expect(twuiNormalizeText(" hello world ")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("handles mixed whitespace", () => {
|
||||
expect(twuiNormalizeText(" hello\n\n world \r\n ")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("handles empty string", () => {
|
||||
expect(twuiNormalizeText("")).toBe("");
|
||||
});
|
||||
|
||||
test("handles string with only whitespace", () => {
|
||||
expect(twuiNormalizeText(" ")).toBe("");
|
||||
});
|
||||
|
||||
test("preserves single spaces", () => {
|
||||
expect(twuiNormalizeText("hello world")).toBe("hello world");
|
||||
});
|
||||
|
||||
test("handles tabs as regular characters (not collapsed by default)", () => {
|
||||
const result = twuiNormalizeText("hello\tworld");
|
||||
expect(result).toContain("hello");
|
||||
expect(result).toContain("world");
|
||||
});
|
||||
|
||||
test("handles multiple consecutive newlines", () => {
|
||||
expect(twuiNormalizeText("hello\n\n\nworld")).toBe("hello world");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user