diff options
Diffstat (limited to 'js/src/tests/ecma_5/strict/function-name-arity.js')
-rw-r--r-- | js/src/tests/ecma_5/strict/function-name-arity.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/js/src/tests/ecma_5/strict/function-name-arity.js b/js/src/tests/ecma_5/strict/function-name-arity.js new file mode 100644 index 0000000..2b8c5cd --- /dev/null +++ b/js/src/tests/ecma_5/strict/function-name-arity.js @@ -0,0 +1,26 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ + +/* + * Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ + */ + +function fn() { + return function f(a, b, c) { }; +} + +assertEq(testLenientAndStrict('var f = fn(); f.name = "g"; f.name', + returns("f"), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('var f = fn(); delete f.name', + returns(false), raisesException(TypeError)), + true); + +assertEq(testLenientAndStrict('var f = fn(); f.arity = 4; f.arity', + returns(3), raisesException(TypeError)), + true); +assertEq(testLenientAndStrict('var f = fn(); delete f.arity', + returns(false), raisesException(TypeError)), + true); + +reportCompare(true, true); |