Source code

Revision control

Copy as Markdown

Other Tools

// Test IC for getters backed by a JSNative.
function test1() {
for (var i = 0; i < 60; i++) {
assertEq(it.customNative, undefined);
}
var res = 0;
for (var i = 0; i < 60; i++) {
it.customNative = i;
res += it.customNative;
}
assertEq(res, 1770);
}
function test2() {
function getValue() {
return it.customNative;
}
for (var i = 0; i < 60; i++) {
it.customNative = i;
assertEq(getValue(), i);
}
for (var i = 0; i < 60; i++) {
it.customNative = null;
assertEq(getValue(), null);
delete it["customNativ" + "e"];
assertEq(getValue(), undefined);
assertEq(it.customNative, undefined);
}
}
if ("it" in this) {
test1();
test2();
}