diff options
Diffstat (limited to 'js/src/tests/test262/ch12/12.4')
-rw-r--r-- | js/src/tests/test262/ch12/12.4/S12.4_A1.js | 17 | ||||
-rw-r--r-- | js/src/tests/test262/ch12/12.4/S12.4_A2_T1.js | 35 | ||||
-rw-r--r-- | js/src/tests/test262/ch12/12.4/S12.4_A2_T2.js | 35 | ||||
-rw-r--r-- | js/src/tests/test262/ch12/12.4/browser.js | 0 | ||||
-rw-r--r-- | js/src/tests/test262/ch12/12.4/shell.js | 0 |
5 files changed, 87 insertions, 0 deletions
diff --git a/js/src/tests/test262/ch12/12.4/S12.4_A1.js b/js/src/tests/test262/ch12/12.4/S12.4_A1.js new file mode 100644 index 000000000..0754d791e --- /dev/null +++ b/js/src/tests/test262/ch12/12.4/S12.4_A1.js @@ -0,0 +1,17 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * An ExpressionStatement can not start with the function keyword because that might make it ambiguous with a FunctionDeclaration + * + * @path ch12/12.4/S12.4_A1.js + * @description Checking if execution of "function(){}()" fails + * @negative + */ + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +function(){}(); +// +////////////////////////////////////////////////////////////////////////////// + diff --git a/js/src/tests/test262/ch12/12.4/S12.4_A2_T1.js b/js/src/tests/test262/ch12/12.4/S12.4_A2_T1.js new file mode 100644 index 000000000..70d0aa62d --- /dev/null +++ b/js/src/tests/test262/ch12/12.4/S12.4_A2_T1.js @@ -0,0 +1,35 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * The production ExpressionStatement : [lookahead \notin {{, function}] Expression; is evaluated as follows: + * 1. Evaluate Expression. + * 2. Call GetValue(Result(1)). + * 3. Return (normal, Result(2), empty) + * + * @path ch12/12.4/S12.4_A2_T1.js + * @description Checking by using eval "(eval("x+1+x==1"))" + */ + +x=1; + +__evaluated = eval("x+1+x==1"); + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +if (__evaluated !== false) { + $ERROR('#1: __evaluated === false. Actual: __evaluated ==='+ __evaluated ); +} +// +////////////////////////////////////////////////////////////////////////////// + +__evaluated = eval("1+1+1==1"); + +////////////////////////////////////////////////////////////////////////////// +//CHECK#2 +if (__evaluated !== false) { + $ERROR('#2: __evaluated === false. Actual: __evaluated ==='+ __evaluated ); +} +// +////////////////////////////////////////////////////////////////////////////// + diff --git a/js/src/tests/test262/ch12/12.4/S12.4_A2_T2.js b/js/src/tests/test262/ch12/12.4/S12.4_A2_T2.js new file mode 100644 index 000000000..2fdadc008 --- /dev/null +++ b/js/src/tests/test262/ch12/12.4/S12.4_A2_T2.js @@ -0,0 +1,35 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * The production ExpressionStatement : [lookahead \notin {{, function}] Expression; is evaluated as follows: + * 1. Evaluate Expression. + * 2. Call GetValue(Result(1)). + * 3. Return (normal, Result(2), empty) + * + * @path ch12/12.4/S12.4_A2_T2.js + * @description Checking by using eval(eval(x), where x is any string) + */ + +x="5+1|0===0"; + +__evaluated = eval(x); + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +if (__evaluated !== 7) { + $ERROR('#1: __evaluated === 7. Actual: __evaluated ==='+ __evaluated ); +} +// +////////////////////////////////////////////////////////////////////////////// + +__evaluated = eval("2*"+x+">-1"); + +////////////////////////////////////////////////////////////////////////////// +//CHECK#2 +if (__evaluated !== 11) { + $ERROR('#2: __evaluated === 11. Actual: __evaluated ==='+ __evaluated ); +} +// +////////////////////////////////////////////////////////////////////////////// + diff --git a/js/src/tests/test262/ch12/12.4/browser.js b/js/src/tests/test262/ch12/12.4/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/test262/ch12/12.4/browser.js diff --git a/js/src/tests/test262/ch12/12.4/shell.js b/js/src/tests/test262/ch12/12.4/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/test262/ch12/12.4/shell.js |