Source code

Revision control

Copy as Markdown

Other Tools

load(libdir + "asserts.js");
function test(date) {
let inc = date;
let dec = date;
return [+date, -date, ~date, ++inc, --dec];
}
with ({}) {}
let date = new Date("2000-01-01");
let val = 946684800000;
let expected = [val, -val, ~val, val+1, val-1]
for (var i = 0; i < 2000; i++) {
if (i == 1750) {
Object.defineProperty(Date.prototype, "valueOf", {value: () => 3});
expected = [3, -3, ~3, 4, 2];
}
let result = test(date);
assertDeepEq(result, expected);
}