UNPKG

@tdb/util

Version:
183 lines 9.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var chai_1 = require("chai"); var _1 = require("."); describe('isPlainObject', function () { it('is a plain object', function () { chai_1.expect(_1.value.isPlainObject(Object.create({}))).to.equal(true); chai_1.expect(_1.value.isPlainObject(Object.create(Object.prototype))).to.equal(true); chai_1.expect(_1.value.isPlainObject({ foo: 123 })).to.equal(true); chai_1.expect(_1.value.isPlainObject({})).to.equal(true); }); it('is not a plain object', function () { var Foo = (function () { function Foo() { } return Foo; }()); chai_1.expect(_1.value.isPlainObject(1)).to.equal(false); chai_1.expect(_1.value.isPlainObject(['foo', 'bar'])).to.equal(false); chai_1.expect(_1.value.isPlainObject([])).to.equal(false); chai_1.expect(_1.value.isPlainObject(new Foo())).to.equal(false); chai_1.expect(_1.value.isPlainObject(null)).to.equal(false); chai_1.expect(_1.value.isPlainObject(Object.create(null))).to.equal(false); }); }); describe('value.isBoolString', function () { it('is a boolean', function () { chai_1.expect(_1.value.isBoolString('true')).to.eql(true); chai_1.expect(_1.value.isBoolString('false')).to.eql(true); chai_1.expect(_1.value.isBoolString('True')).to.eql(true); chai_1.expect(_1.value.isBoolString('False')).to.eql(true); chai_1.expect(_1.value.isBoolString('TRUE')).to.eql(true); chai_1.expect(_1.value.isBoolString('FALSE')).to.eql(true); }); it('is not a boolean', function () { chai_1.expect(_1.value.isBoolString(undefined)).to.eql(false); chai_1.expect(_1.value.isBoolString('')).to.eql(false); chai_1.expect(_1.value.isBoolString('HELLO')).to.eql(false); }); }); describe('value.isBlank', function () { describe('blank', function () { it('is blank (nothing)', function () { chai_1.expect(_1.value.isBlank(undefined)).to.equal(true); chai_1.expect(_1.value.isBlank(null)).to.equal(true); }); it('is blank (string)', function () { chai_1.expect(_1.value.isBlank('')).to.equal(true); chai_1.expect(_1.value.isBlank(' ')).to.equal(true); chai_1.expect(_1.value.isBlank(' ')).to.equal(true); }); it('is blank (array)', function () { chai_1.expect(_1.value.isBlank([])).to.equal(true); chai_1.expect(_1.value.isBlank([null])).to.equal(true); chai_1.expect(_1.value.isBlank([undefined])).to.equal(true); chai_1.expect(_1.value.isBlank([undefined, null])).to.equal(true); chai_1.expect(_1.value.isBlank([undefined, null, ''])).to.equal(true); }); }); describe('NOT blank', function () { it('is not blank (string)', function () { chai_1.expect(_1.value.isBlank('a')).to.equal(false); chai_1.expect(_1.value.isBlank(' .')).to.equal(false); }); it('is not blank (array)', function () { chai_1.expect(_1.value.isBlank([1])).to.equal(false); chai_1.expect(_1.value.isBlank([null, 'value'])).to.equal(false); chai_1.expect(_1.value.isBlank([null, ' '])).to.equal(false); }); it('is not blank (other values)', function () { chai_1.expect(_1.value.isBlank(1)).to.equal(false); chai_1.expect(_1.value.isBlank({})).to.equal(false); chai_1.expect(_1.value.isBlank(function () { return 0; })).to.equal(false); }); }); }); describe('value.isNumeric', function () { it('is numeric (number)', function () { chai_1.expect(_1.value.isNumeric(0)).to.equal(true); chai_1.expect(_1.value.isNumeric(1)).to.equal(true); chai_1.expect(_1.value.isNumeric(-1)).to.equal(true); chai_1.expect(_1.value.isNumeric(0.5)).to.equal(true); chai_1.expect(_1.value.isNumeric(123456.123456)).to.equal(true); }); it('is numeric (string)', function () { chai_1.expect(_1.value.isNumeric('0')).to.equal(true); chai_1.expect(_1.value.isNumeric('1')).to.equal(true); chai_1.expect(_1.value.isNumeric('-1')).to.equal(true); chai_1.expect(_1.value.isNumeric('0.5')).to.equal(true); chai_1.expect(_1.value.isNumeric('123456.123456')).to.equal(true); }); it('is not numeric', function () { chai_1.expect(_1.value.isNumeric(null)).to.equal(false); chai_1.expect(_1.value.isNumeric(undefined)).to.equal(false); chai_1.expect(_1.value.isNumeric('string')).to.equal(false); chai_1.expect(_1.value.isNumeric('123px')).to.equal(false); chai_1.expect(_1.value.isNumeric({})).to.equal(false); chai_1.expect(_1.value.isNumeric(new Date())).to.equal(false); }); }); describe('isLetter', function () { it('is a letter', function () { chai_1.expect(_1.value.isLetter('A')).to.eql(true); chai_1.expect(_1.value.isLetter('a')).to.eql(true); chai_1.expect(_1.value.isLetter('b')).to.eql(true); chai_1.expect(_1.value.isLetter('z')).to.eql(true); chai_1.expect(_1.value.isLetter('Z')).to.eql(true); }); it('is not a letter', function () { chai_1.expect(_1.value.isLetter(undefined)).to.eql(false); chai_1.expect(_1.value.isLetter(null)).to.eql(false); chai_1.expect(_1.value.isLetter('')).to.eql(false); chai_1.expect(_1.value.isLetter('\n')).to.eql(false); chai_1.expect(_1.value.isLetter(' ')).to.eql(false); chai_1.expect(_1.value.isLetter('1')).to.eql(false); chai_1.expect(_1.value.isLetter('*')).to.eql(false); chai_1.expect(_1.value.isLetter('.')).to.eql(false); chai_1.expect(_1.value.isLetter(' a')).to.eql(false); chai_1.expect(_1.value.isLetter(123)).to.eql(false); chai_1.expect(_1.value.isLetter({})).to.eql(false); chai_1.expect(_1.value.isLetter(new Date())).to.eql(false); }); }); describe('isAlpha', function () { it('is alphabet letters', function () { chai_1.expect(_1.value.isAlpha('A')).to.eql(true); chai_1.expect(_1.value.isAlpha('a')).to.eql(true); chai_1.expect(_1.value.isAlpha('ABC')).to.eql(true); }); it('is not all letters', function () { chai_1.expect(_1.value.isAlpha(undefined)).to.eql(false); chai_1.expect(_1.value.isAlpha(null)).to.eql(false); chai_1.expect(_1.value.isAlpha('')).to.eql(false); chai_1.expect(_1.value.isAlpha('\n')).to.eql(false); chai_1.expect(_1.value.isAlpha(' ')).to.eql(false); chai_1.expect(_1.value.isAlpha('1')).to.eql(false); chai_1.expect(_1.value.isAlpha('*')).to.eql(false); chai_1.expect(_1.value.isAlpha('.')).to.eql(false); chai_1.expect(_1.value.isAlpha(' a')).to.eql(false); chai_1.expect(_1.value.isAlpha(123)).to.eql(false); chai_1.expect(_1.value.isAlpha({})).to.eql(false); chai_1.expect(_1.value.isAlpha(new Date())).to.eql(false); chai_1.expect(_1.value.isAlpha('A:B')).to.eql(false); chai_1.expect(_1.value.isAlpha('A-B')).to.eql(false); chai_1.expect(_1.value.isAlpha('A B')).to.eql(false); }); }); describe('hasWhitespace', function () { it('has whitespace', function () { chai_1.expect(_1.value.hasWhitespace(' ')).to.eql(true); chai_1.expect(_1.value.hasWhitespace(' ')).to.eql(true); chai_1.expect(_1.value.hasWhitespace('one two')).to.eql(true); chai_1.expect(_1.value.hasWhitespace(' one two ')).to.eql(true); }); it('has no whitespace', function () { chai_1.expect(_1.value.hasWhitespace('')).to.eql(false); chai_1.expect(_1.value.hasWhitespace('hello')).to.eql(false); chai_1.expect(_1.value.hasWhitespace('123')).to.eql(false); }); }); describe('isEmail', function () { it('is not an email when empty', function () { chai_1.expect(_1.value.isEmail('')).to.eql(false); chai_1.expect(_1.value.isEmail(' ')).to.eql(false); chai_1.expect(_1.value.isEmail()).to.eql(false); }); it('is not an email address whem not trimmed of whitespace', function () { chai_1.expect(_1.value.isEmail(' phil@foo.com')).to.eql(false); chai_1.expect(_1.value.isEmail('phil@foo.com ')).to.eql(false); chai_1.expect(_1.value.isEmail(' phil@foo.com ')).to.eql(false); }); it('is not an email address', function () { chai_1.expect(_1.value.isEmail('phil@foo.c')).to.eql(false); chai_1.expect(_1.value.isEmail('phil@foo.')).to.eql(false); chai_1.expect(_1.value.isEmail('@foo.com')).to.eql(false); chai_1.expect(_1.value.isEmail('foo.com')).to.eql(false); }); it('is an email', function () { chai_1.expect(_1.value.isEmail('phil@foo.com')).to.eql(true); chai_1.expect(_1.value.isEmail('1@1.nz')).to.eql(true); }); }); //# sourceMappingURL=value.is.test.js.map