Files
anomalyco_opencode/packages/tui/test/util/locale.test.ts
2026-07-28 17:12:07 -04:00

15 lines
618 B
TypeScript

import { expect, test } from "bun:test"
import { Locale } from "../../src/util/locale"
test("truncates text from the right by terminal width", () => {
expect(Locale.truncateWidth("abcdefgh", 5)).toBe("abcd…")
expect(Locale.truncateWidth("ab界cd", 5)).toBe("ab界…")
expect(Locale.truncateWidth("abcdefgh", 1)).toBe("…")
expect(Locale.truncateWidth("abcdefgh", 0)).toBe("")
})
test("takes whole graphemes within terminal width", () => {
expect(Locale.takeWidth("ab界cd", 4)).toBe("ab界")
expect(Locale.graphemes("a👨‍👩‍👧‍👦b")).toEqual(["a", "👨‍👩‍👧‍👦", "b"])
})