Add is.infinite()

This commit is contained in:
Melvin Philips 2017-10-05 00:18:25 -07:00 committed by Sindre Sorhus
parent 11b98171c8
commit 24c964a7c7
3 changed files with 16 additions and 2 deletions

View file

@ -161,4 +161,6 @@ is.inRange = (x, range) => {
throw new TypeError(`Invalid range: ${util.inspect(range)}`);
};
is.infinite = x => x === Infinity || x === -Infinity;
module.exports = is;

View file

@ -145,6 +145,10 @@ Check if `value` (number) is in the range of `0` to `upperBound`.
is.inRange(3, 10);
```
##### .infinite(value)
Check if `value` is `Infinity` or `-Infinity`.
## FAQ

12
test.js
View file

@ -89,7 +89,11 @@ const types = new Map([
Object.create(null),
new Object() // eslint-disable-line no-new-object
]],
['integer', 6]
['integer', 6],
['infinite', [
Infinity,
-Infinity
]]
]);
// This ensures a certain method matches only the types
@ -132,7 +136,7 @@ test('is.string', t => {
});
test('is.number', t => {
testType(t, 'number', ['nan', 'integer']);
testType(t, 'number', ['nan', 'integer', 'infinite']);
});
test('is.boolean', t => {
@ -365,3 +369,7 @@ test('is.inRange', t => {
m.inRange(0, [1, 2, 3]);
});
});
test('is.infinite', t => {
testType(t, 'infinite', ['number']);
});