blob: a42a42641a09d2aff6f008c17ed8b726ea874b95 [file] [log] [blame]
// Inspired by mozilla tests
description('Tests for ES6 arrow function prototype property');
var af1 = () => {};
debug('() => {}');
shouldBe("typeof af1.prototype", "'undefined'");
shouldBe("af1.hasOwnProperty('prototype')", "false");
var af2 = (a) => {a + 1};
debug('(a) => {a + 1}');
shouldBe("typeof af2.prototype", "'undefined'");
shouldBe("af2.hasOwnProperty('prototype')", "false");
var af3 = (x) => x + 1;
debug('(x) => x + 1');
shouldBe("typeof af3.prototype", "'undefined'");
shouldBe("af3.hasOwnProperty('prototype')", "false");
af1.prototype = function (x) { return x + 1;};
debug('af1.prototype = function (x) { return x + 1;}');
shouldBe("typeof af1.prototype", "'function'");
shouldBe("af1.prototype.toString()", "'function (x) { return x + 1;}'");
shouldBe("af1.hasOwnProperty('prototype')", "true");
delete af1.prototype;
debug('delete af1.prototype');
shouldBe("typeof af1.prototype", "'undefined'");
shouldBe("af1.hasOwnProperty('prototype')", "false");
var successfullyParsed = true;