diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/ThrowTypeError/unique-per-realm-function-proto.js')
-rw-r--r-- | js/src/tests/test262/built-ins/ThrowTypeError/unique-per-realm-function-proto.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/ThrowTypeError/unique-per-realm-function-proto.js b/js/src/tests/test262/built-ins/ThrowTypeError/unique-per-realm-function-proto.js new file mode 100644 index 0000000000..ff4db54cb5 --- /dev/null +++ b/js/src/tests/test262/built-ins/ThrowTypeError/unique-per-realm-function-proto.js @@ -0,0 +1,29 @@ +// Copyright (C) 2016 André Bargull. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-%throwtypeerror% +description: > + %ThrowTypeError% is defined once for each realm. +info: | + %ThrowTypeError% ( ) + + The %ThrowTypeError% intrinsic is an anonymous built-in function + object that is defined once for each realm. +---*/ + +var ThrowTypeError = Object.getOwnPropertyDescriptor(function() { + "use strict"; + return arguments; +}(), "callee").get; + +// Test with Function.prototype.arguments and Function.prototype.caller properties. +var argumentsDesc = Object.getOwnPropertyDescriptor(Function.prototype, "arguments"); +var callerDesc = Object.getOwnPropertyDescriptor(Function.prototype, "caller"); + +assert.sameValue(ThrowTypeError, argumentsDesc.get, "arguments.get"); +assert.sameValue(ThrowTypeError, argumentsDesc.set, "arguments.set"); +assert.sameValue(ThrowTypeError, callerDesc.set, "caller.set"); +assert.sameValue(ThrowTypeError, callerDesc.get, "caller.get"); + +reportCompare(0, 0); |