test262/test/built-ins/GeneratorFunction/instance-restricted-propert...

38 lines
968 B
JavaScript

// Copyright (C) 2015 Caitlin Potter. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
Functions created using GeneratorFunction intrinsic function do not have
own properties "caller" or "arguments", but inherit them from
%FunctionPrototype%.
features: [generators]
---*/
var Generator = Object.getPrototypeOf(function*() {});
var GeneratorFunction = Generator.constructor;
var generator = new GeneratorFunction();
assert.sameValue(
generator.hasOwnProperty('caller'), false, 'No "caller" own property'
);
assert.sameValue(
generator.hasOwnProperty('arguments'), false, 'No "arguments" own property'
);
assert.throws(TypeError, function() {
return generator.caller;
});
assert.throws(TypeError, function() {
generator.caller = {};
});
assert.throws(TypeError, function() {
return generator.arguments;
});
assert.throws(TypeError, function() {
generator.arguments = {};
});