ladybird/Libraries/LibJS/Tests/update-expressions-basic.js
Matthew Olsson 78155a6668 LibJS: Consolidate error messages into ErrorTypes.h
Now, exceptions can be thrown with
interpreter.throw_exception<T>(ErrorType:TYPE, "format", "args",
"here").
2020-06-11 07:46:20 +02:00

54 lines
865 B
JavaScript

load("test-common.js");
try {
assertThrowsError(() => {
++x;
}, {
error: ReferenceError,
message: "'x' is not defined",
});
var n = 0;
assert(++n === 1);
assert(n === 1);
var n = 0;
assert(n++ === 0);
assert(n === 1);
var n = 0;
assert(--n === -1);
assert(n === -1);
var n = 0;
assert(n-- === 0);
assert(n === -1);
var a = [];
assert(a++ === 0);
assert(a === 1);
var b = true;
assert(b-- === 1);
assert(b === 0);
var s = "foo";
assert(isNaN(++s));
assert(isNaN(s));
var s = "foo";
assert(isNaN(s++));
assert(isNaN(s));
var s = "foo";
assert(isNaN(--s));
assert(isNaN(s));
var s = "foo";
assert(isNaN(s--));
assert(isNaN(s));
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e);
}