45 lines
1.4 KiB
TypeScript
45 lines
1.4 KiB
TypeScript
import { describe, expect, test } from "bun:test";
|
|
import twuiCamelToNormalCase from "./camel-to-normal-case";
|
|
|
|
describe("twuiCamelToNormalCase", () => {
|
|
test("converts simple camelCase", () => {
|
|
expect(twuiCamelToNormalCase("camelCase")).toBe("Camel Case");
|
|
});
|
|
|
|
test("converts pascalCase", () => {
|
|
expect(twuiCamelToNormalCase("PascalCase")).toBe("Pascal Case");
|
|
});
|
|
|
|
test("handles single lowercase word", () => {
|
|
expect(twuiCamelToNormalCase("word")).toBe("Word");
|
|
});
|
|
|
|
test("handles single uppercase word", () => {
|
|
expect(twuiCamelToNormalCase("Word")).toBe("Word");
|
|
});
|
|
|
|
test("handles multiple uppercase transitions", () => {
|
|
expect(twuiCamelToNormalCase("firstNameLastName")).toBe("First Name Last Name");
|
|
});
|
|
|
|
test("handles consecutive uppercase letters", () => {
|
|
expect(twuiCamelToNormalCase("XMLParser")).toBe("X M L Parser");
|
|
});
|
|
|
|
test("handles already normal text", () => {
|
|
expect(twuiCamelToNormalCase("Normal")).toBe("Normal");
|
|
});
|
|
|
|
test("handles empty string", () => {
|
|
expect(twuiCamelToNormalCase("")).toBe("");
|
|
});
|
|
|
|
test("handles string with numbers", () => {
|
|
expect(twuiCamelToNormalCase("field123")).toBe("Field123");
|
|
});
|
|
|
|
test("handles acronym at end", () => {
|
|
expect(twuiCamelToNormalCase("userID")).toBe("User I D");
|
|
});
|
|
});
|