profectus-template/tests/util/common.test.ts

25 lines
1.3 KiB
TypeScript

import { jest, describe, expect, test } from "@jest/globals";
import { camelToTitle, isFunction } from "util/common";
describe("camelToTitle", () => {
test("Capitalizes first letter in single word", () =>
expect(camelToTitle("test")).toBe("Test"));
test("Converts three word camel case string to title case", () =>
expect(camelToTitle("camelCaseTest")).toBe("Camel Case Test"));
});
describe("isFunction", () => {
test("Given function returns true", () => expect(isFunction(jest.fn())).toBe(true));
// Go through all primitives and basic types
test("Given a string returns false", () => expect(isFunction("test")).toBe(false));
test("Given a number returns false", () => expect(isFunction(10)).toBe(false));
test("Given a bigint returns false", () => expect(isFunction(BigInt(10))).toBe(false));
test("Given a boolean returns false", () => expect(isFunction(true)).toBe(false));
test("Given undefined returns false", () => expect(isFunction(undefined)).toBe(false));
test("Given a symbol returns false", () => expect(isFunction(Symbol())).toBe(false));
test("Given null returns false", () => expect(isFunction(null)).toBe(false));
test("Given object returns false", () => expect(isFunction({})).toBe(false));
test("Given array returns false", () => expect(isFunction([])).toBe(false));
});