15 lines
618 B
TypeScript
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"])
|
|
})
|