From 5655ce433189efd6d93a58fe3719fd32164eb88d Mon Sep 17 00:00:00 2001 From: Arman Ozak Date: Fri, 20 Mar 2020 14:00:00 +0300 Subject: [PATCH] feat(core): add a utility function that checks if a value is undefined or empty string --- .../core/src/lib/tests/common-utils.spec.ts | 18 +++++++++++++++++- .../core/src/lib/utils/common-utils.ts | 4 ++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/core/src/lib/tests/common-utils.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/common-utils.spec.ts index 98c6614987..60280e396b 100644 --- a/npm/ng-packs/packages/core/src/lib/tests/common-utils.spec.ts +++ b/npm/ng-packs/packages/core/src/lib/tests/common-utils.spec.ts @@ -1,4 +1,4 @@ -import { noop } from '../utils'; +import { isUndefinedOrEmptyString, noop } from '../utils'; describe('CommonUtils', () => { describe('#noop', () => { @@ -7,4 +7,20 @@ describe('CommonUtils', () => { expect(noop()()).toBeUndefined(); }); }); + + describe('#isUndefinedOrEmptyString', () => { + test.each` + value | expected + ${null} | ${false} + ${0} | ${false} + ${true} | ${false} + ${'x'} | ${false} + ${{}} | ${false} + ${[]} | ${false} + ${undefined} | ${true} + ${''} | ${true} + `('should return $expected when given parameter is $value', ({ value, expected }) => { + expect(isUndefinedOrEmptyString(value)).toBe(expected); + }); + }); }); diff --git a/npm/ng-packs/packages/core/src/lib/utils/common-utils.ts b/npm/ng-packs/packages/core/src/lib/utils/common-utils.ts index 756d3a34dd..b8609be130 100644 --- a/npm/ng-packs/packages/core/src/lib/utils/common-utils.ts +++ b/npm/ng-packs/packages/core/src/lib/utils/common-utils.ts @@ -3,3 +3,7 @@ export function noop() { const fn = function() {}; return fn; } + +export function isUndefinedOrEmptyString(value: unknown): boolean { + return value === undefined || value === ''; +}