Add finiteNumber, nonNegativeNumber, and positiveInteger predicates
This commit is contained in:
parent
ac46b5400d
commit
63be5c0c19
3 changed files with 150 additions and 0 deletions
96
test/test.ts
96
test/test.ts
|
|
@ -544,6 +544,34 @@ test('is.positiveNumber', () => {
|
|||
});
|
||||
});
|
||||
|
||||
test('is.finiteNumber', () => {
|
||||
assert.ok(is.finiteNumber(6));
|
||||
assert.ok(is.finiteNumber(-6));
|
||||
assert.ok(is.finiteNumber(0));
|
||||
assert.ok(is.finiteNumber(1.4));
|
||||
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.finiteNumber(6);
|
||||
});
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.finiteNumber(0);
|
||||
});
|
||||
|
||||
assert.strictEqual(is.finiteNumber(Number.POSITIVE_INFINITY), false);
|
||||
assert.strictEqual(is.finiteNumber(Number.NEGATIVE_INFINITY), false);
|
||||
assert.strictEqual(is.finiteNumber(Number.NaN), false);
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.finiteNumber(Number.POSITIVE_INFINITY);
|
||||
});
|
||||
assert.throws(() => {
|
||||
isAssert.finiteNumber(Number.NEGATIVE_INFINITY);
|
||||
});
|
||||
assert.throws(() => {
|
||||
isAssert.finiteNumber(Number.NaN);
|
||||
});
|
||||
});
|
||||
|
||||
test('is.negativeNumber', () => {
|
||||
assert.ok(is.negativeNumber(-6));
|
||||
assert.ok(is.negativeNumber(-1.4));
|
||||
|
|
@ -582,6 +610,62 @@ test('is.negativeNumber', () => {
|
|||
});
|
||||
});
|
||||
|
||||
test('is.nonNegativeNumber', () => {
|
||||
assert.ok(is.nonNegativeNumber(0));
|
||||
assert.ok(is.nonNegativeNumber(6));
|
||||
assert.ok(is.nonNegativeNumber(1.4));
|
||||
assert.ok(is.nonNegativeNumber(Number.POSITIVE_INFINITY));
|
||||
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.nonNegativeNumber(0);
|
||||
});
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.nonNegativeNumber(6);
|
||||
});
|
||||
|
||||
assert.ok(is.nonNegativeNumber(-0)); // -0 >= 0 is true in JavaScript
|
||||
assert.strictEqual(is.nonNegativeNumber(-6), false);
|
||||
assert.strictEqual(is.nonNegativeNumber(-1.4), false);
|
||||
assert.strictEqual(is.nonNegativeNumber(Number.NEGATIVE_INFINITY), false);
|
||||
assert.strictEqual(is.nonNegativeNumber(Number.NaN), false);
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.nonNegativeNumber(-6);
|
||||
});
|
||||
assert.throws(() => {
|
||||
isAssert.nonNegativeNumber(Number.NEGATIVE_INFINITY);
|
||||
});
|
||||
});
|
||||
|
||||
test('is.positiveInteger', () => {
|
||||
assert.ok(is.positiveInteger(1));
|
||||
assert.ok(is.positiveInteger(6));
|
||||
assert.ok(is.positiveInteger(100));
|
||||
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.positiveInteger(1);
|
||||
});
|
||||
assert.doesNotThrow(() => {
|
||||
isAssert.positiveInteger(6);
|
||||
});
|
||||
|
||||
assert.strictEqual(is.positiveInteger(0), false);
|
||||
assert.strictEqual(is.positiveInteger(-1), false);
|
||||
assert.strictEqual(is.positiveInteger(1.5), false);
|
||||
assert.strictEqual(is.positiveInteger(Number.POSITIVE_INFINITY), false);
|
||||
assert.strictEqual(is.positiveInteger(Number.NaN), false);
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.positiveInteger(0);
|
||||
});
|
||||
assert.throws(() => {
|
||||
isAssert.positiveInteger(-1);
|
||||
});
|
||||
assert.throws(() => {
|
||||
isAssert.positiveInteger(1.5);
|
||||
});
|
||||
});
|
||||
|
||||
test('is.numericString supplemental', () => {
|
||||
assert.strictEqual(is.numericString(''), false);
|
||||
assert.strictEqual(is.numericString(' '), false);
|
||||
|
|
@ -2159,6 +2243,10 @@ test('custom assertion message', () => {
|
|||
isAssert.falsy(true, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.finiteNumber(Number.POSITIVE_INFINITY, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.float32Array(undefined, message);
|
||||
}, {message});
|
||||
|
|
@ -2259,6 +2347,10 @@ test('custom assertion message', () => {
|
|||
isAssert.nonEmptyStringAndNotWhitespace(undefined, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.nonNegativeNumber(-1, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.null(undefined, message);
|
||||
}, {message});
|
||||
|
|
@ -2291,6 +2383,10 @@ test('custom assertion message', () => {
|
|||
isAssert.plainObject(undefined, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.positiveInteger(0, message);
|
||||
}, {message});
|
||||
|
||||
assert.throws(() => {
|
||||
isAssert.positiveNumber(undefined, message);
|
||||
}, {message});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue