1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 22:27:35 +00:00

LibJS: Convert most builtin tests to new system

This commit is contained in:
Matthew Olsson 2020-07-04 10:09:48 -07:00 committed by Andreas Kling
parent 46581773c1
commit 3f97d75778
107 changed files with 2031 additions and 2243 deletions

View file

@ -1,38 +1,32 @@
load("test-common.js");
test("basic functionality", () => {
expect(Number.isInteger).toHaveLength(1);
try {
assert(Number.isInteger.length === 1);
assert(Number.isInteger(0) === true);
assert(Number.isInteger(42) === true);
assert(Number.isInteger(-10000) === true);
assert(Number.isInteger(5) === true);
assert(Number.isInteger(5.0) === true);
assert(Number.isInteger(5 + 1/10000000000000000) === true);
expect(Number.isInteger(0)).toBeTrue();
expect(Number.isInteger(42)).toBeTrue();
expect(Number.isInteger(-10000)).toBeTrue();
expect(Number.isInteger(5)).toBeTrue();
expect(Number.isInteger(5.0)).toBeTrue();
expect(Number.isInteger(5 + 1/10000000000000000)).toBeTrue();
// FIXME: values outside of i32's range should still return true
// assert(Number.isInteger(+2147483647 + 1) === true);
// assert(Number.isInteger(-2147483648 - 1) === true);
// assert(Number.isInteger(99999999999999999999999999999999999) === true);
// expect(Number.isInteger(+2147483647 + 1)).toBeTrue();
// expect(Number.isInteger(-2147483648 - 1)).toBeTrue();
// expect(Number.isInteger(99999999999999999999999999999999999)).toBeTrue();
assert(Number.isInteger(5 + 1/1000000000000000) === false);
assert(Number.isInteger(1.23) === false);
assert(Number.isInteger("") === false);
assert(Number.isInteger("0") === false);
assert(Number.isInteger("42") === false);
assert(Number.isInteger(true) === false);
assert(Number.isInteger(false) === false);
assert(Number.isInteger(null) === false);
assert(Number.isInteger([]) === false);
assert(Number.isInteger(Infinity) === false);
assert(Number.isInteger(-Infinity) === false);
assert(Number.isInteger(NaN) === false);
assert(Number.isInteger() === false);
assert(Number.isInteger(undefined) === false);
assert(Number.isInteger("foo") === false);
assert(Number.isInteger({}) === false);
assert(Number.isInteger([1, 2, 3]) === false);
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e.message);
}
expect(Number.isInteger(5 + 1/1000000000000000)).toBeFalse();
expect(Number.isInteger(1.23)).toBeFalse();
expect(Number.isInteger("")).toBeFalse();
expect(Number.isInteger("0")).toBeFalse();
expect(Number.isInteger("42")).toBeFalse();
expect(Number.isInteger(true)).toBeFalse();
expect(Number.isInteger(false)).toBeFalse();
expect(Number.isInteger(null)).toBeFalse();
expect(Number.isInteger([])).toBeFalse();
expect(Number.isInteger(Infinity)).toBeFalse();
expect(Number.isInteger(-Infinity)).toBeFalse();
expect(Number.isInteger(NaN)).toBeFalse();
expect(Number.isInteger()).toBeFalse();
expect(Number.isInteger(undefined)).toBeFalse();
expect(Number.isInteger("foo")).toBeFalse();
expect(Number.isInteger({})).toBeFalse();
expect(Number.isInteger([1, 2, 3])).toBeFalse();
});