UNPKG

@applicaster/zapp-react-native-utils

Version:

Applicaster Zapp React Native utilities package

67 lines (54 loc) 1.68 kB
import { toPositiveNumberWithDefaultZero } from ".."; const DEFAULT = 0; describe("toNumber", () => { it("return number if input is positive number", () => { const inputs = [0, 1, 2, 100, 200.12]; expect.assertions(inputs.length); inputs.forEach((input) => { const output = toPositiveNumberWithDefaultZero(input); expect(output).toBe(input); }); }); it("return number if input is positive number as string", () => { const inputs = ["0", "1", "2", "100", "200.12"]; expect.assertions(inputs.length); inputs.forEach((input) => { const output = toPositiveNumberWithDefaultZero(input); expect(output).toBe(Number(input)); }); }); it("return default number if input is negative number", () => { const inputs = [-1, -2, -100]; expect.assertions(inputs.length); inputs.forEach((input) => { const output = toPositiveNumberWithDefaultZero(input); expect(output).toBe(DEFAULT); }); }); it("return default number if input is negative number as string", () => { const inputs = ["-1", "-2", "-100"]; expect.assertions(inputs.length); inputs.forEach((input) => { const output = toPositiveNumberWithDefaultZero(input); expect(output).toBe(DEFAULT); }); }); it("return default if input is not a number or infinite", () => { const inputs = [ "vfdvf", null, undefined, NaN, "", {}, { test: 1 }, [], [1], ]; expect.assertions(inputs.length); inputs.forEach((input) => { const output = toPositiveNumberWithDefaultZero(input); expect(output).toBe(DEFAULT); }); }); });