UNPKG

@qntm-code/utils

Version:

A collection of useful utility functions with associated TypeScript types. All functions have been unit tested.

38 lines (37 loc) 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const isEqual_1 = require("./isEqual"); const isEqualTestDefinitions_spec_1 = require("./isEqualTestDefinitions.spec"); describe('isEqual', () => { describe('types', () => { // eslint-disable-next-line @typescript-eslint/no-empty-function const types = [undefined, null, true, 1, '', new Date(), {}, Symbol(), () => { }]; it(`Should return true if the types are the same`, () => { types.forEach(type => { expect((0, isEqual_1.isEqual)(type, type)).toBeTrue(); }); }); it(`Should return false if the types aren't the same`, () => { types.forEach((aType, aIndex) => types.forEach((bType, bIndex) => { if (aIndex !== bIndex) { if ((0, isEqual_1.isEqual)(aType, bType)) { console.log(aType, bType); } expect((0, isEqual_1.isEqual)(aType, bType)).toBeFalse(); } })); }); }); for (const suite of isEqualTestDefinitions_spec_1.isEqualTests) { describe(suite.description, () => { for (const test of suite.tests) { if (test.only) { fit(test.description, () => expect((0, isEqual_1.isEqual)(test.a, test.b)).toBe(test.expected)); } else { it(test.description, () => expect((0, isEqual_1.isEqual)(test.a, test.b)).toBe(test.expected)); } } }); } });