1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 18:18:12 +00:00

LibJS: Add Math.pow()

This commit is contained in:
Linus Groh 2020-04-23 12:36:08 +01:00 committed by Andreas Kling
parent 687096cadd
commit 97366f4dd4
3 changed files with 36 additions and 0 deletions

View file

@ -0,0 +1,29 @@
load("test-common.js");
try {
assert(Math.pow(2, 0) === 1);
assert(Math.pow(2, 1) === 2);
assert(Math.pow(2, 2) === 4);
assert(Math.pow(2, 3) === 8);
assert(Math.pow(2, -3) === 0.125);
assert(Math.pow(3, 2) === 9);
assert(Math.pow(0, 0) === 1);
assert(Math.pow(2, Math.pow(3, 2)) === 512);
assert(Math.pow(Math.pow(2, 3), 2) === 64);
assert(Math.pow("2", "3") === 8);
assert(Math.pow("", []) === 1);
assert(Math.pow([], null) === 1);
assert(Math.pow(null, null) === 1);
assert(Math.pow(undefined, null) === 1);
assert(isNaN(Math.pow(NaN, 2)));
assert(isNaN(Math.pow(2, NaN)));
assert(isNaN(Math.pow(undefined, 2)));
assert(isNaN(Math.pow(2, undefined)));
assert(isNaN(Math.pow(null, undefined)));
assert(isNaN(Math.pow(2, "foo")));
assert(isNaN(Math.pow("foo", 2)));
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e);
}