mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 01:37:36 +00:00
LibJS: Implement Number.isFinite()
Like the global isFinite() without the number coercion.
This commit is contained in:
parent
b094c064d8
commit
c350f5ae67
6 changed files with 40 additions and 2 deletions
29
Libraries/LibJS/Tests/Number.isFinite.js
Normal file
29
Libraries/LibJS/Tests/Number.isFinite.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
load("test-common.js");
|
||||
|
||||
try {
|
||||
assert(Number.isFinite.length === 1);
|
||||
|
||||
assert(Number.isFinite(0) === true);
|
||||
assert(Number.isFinite(1.23) === true);
|
||||
assert(Number.isFinite(42) === true);
|
||||
|
||||
assert(Number.isFinite("") === false);
|
||||
assert(Number.isFinite("0") === false);
|
||||
assert(Number.isFinite("42") === false);
|
||||
assert(Number.isFinite(true) === false);
|
||||
assert(Number.isFinite(false) === false);
|
||||
assert(Number.isFinite(null) === false);
|
||||
assert(Number.isFinite([]) === false);
|
||||
assert(Number.isFinite() === false);
|
||||
assert(Number.isFinite(NaN) === false);
|
||||
assert(Number.isFinite(undefined) === false);
|
||||
assert(Number.isFinite(Infinity) === false);
|
||||
assert(Number.isFinite(-Infinity) === false);
|
||||
assert(Number.isFinite("foo") === false);
|
||||
assert(Number.isFinite({}) === false);
|
||||
assert(Number.isFinite([1, 2, 3]) === false);
|
||||
|
||||
console.log("PASS");
|
||||
} catch (e) {
|
||||
console.log("FAIL: " + e.message);
|
||||
}
|
|
@ -2,12 +2,14 @@ load("test-common.js");
|
|||
|
||||
try {
|
||||
assert(Number.isSafeInteger.length === 1);
|
||||
|
||||
assert(Number.isSafeInteger(0) === true);
|
||||
assert(Number.isSafeInteger(1) === true);
|
||||
assert(Number.isSafeInteger(2.0) === true);
|
||||
assert(Number.isSafeInteger(42) === true);
|
||||
assert(Number.isSafeInteger(Number.MAX_SAFE_INTEGER) === true);
|
||||
assert(Number.isSafeInteger(Number.MIN_SAFE_INTEGER) === true);
|
||||
|
||||
assert(Number.isSafeInteger() === false);
|
||||
assert(Number.isSafeInteger("1") === false);
|
||||
assert(Number.isSafeInteger(2.1) === false);
|
||||
|
|
|
@ -4,6 +4,7 @@ try {
|
|||
assert(isFinite.length === 1);
|
||||
|
||||
assert(isFinite(0) === true);
|
||||
assert(isFinite(1.23) === true);
|
||||
assert(isFinite(42) === true);
|
||||
assert(isFinite("") === true);
|
||||
assert(isFinite("0") === true);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue