diff options
Diffstat (limited to 'js/src/tests/test262/language/statements/function/S13_A13_T3.js')
-rw-r--r-- | js/src/tests/test262/language/statements/function/S13_A13_T3.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statements/function/S13_A13_T3.js b/js/src/tests/test262/language/statements/function/S13_A13_T3.js new file mode 100644 index 0000000000..47f0e2a515 --- /dev/null +++ b/js/src/tests/test262/language/statements/function/S13_A13_T3.js @@ -0,0 +1,33 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: Deleting arguments[i] leads to breaking the connection to local reference +es5id: 13_A13_T3 +description: > + Changing argument value, deleting the argument and then defining a + new value for arguments[i] +---*/ + +function __func(__arg){ + __arg = 2; + delete arguments[0]; + if (arguments[0] !== undefined) { + throw new Test262Error('#1.1: arguments[0] === undefined'); + } + arguments[0] = "A"; + if (arguments[0] !== "A") { + throw new Test262Error('#1.2: arguments[0] === "A"'); + } + return __arg; +} + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +if (__func(1) !== 2) { + throw new Test262Error('#1.3: __func(1) === 2. Actual: __func(1) ==='+__func(1)); +} +// +////////////////////////////////////////////////////////////////////////////// + +reportCompare(0, 0); |