summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/expressions/grouping
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/expressions/grouping')
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A1.js62
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T1.js30
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T2.js19
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T1.js23
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T2.js23
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T3.js28
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T4.js27
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T6.js16
-rw-r--r--js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T7.js15
-rw-r--r--js/src/tests/test262/language/expressions/grouping/browser.js0
-rw-r--r--js/src/tests/test262/language/expressions/grouping/shell.js0
11 files changed, 243 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A1.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A1.js
new file mode 100644
index 0000000000..e46ec0fa98
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A1.js
@@ -0,0 +1,62 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: White Space and Line Terminator inside "grouping" operator are allowed
+es5id: 11.1.6_A1
+description: >
+ Inserting WhiteSpaces and LineTerminators into grouping operator.
+ Eval is used
+---*/
+
+//CHECK#1
+if (eval("(\u00091\u0009)") !== 1) {
+ throw new Test262Error('#1: (\\u00091\\u0009) === 1');
+}
+
+//CHECK#2
+if (eval("(\u000B1\u000B)") !== 1) {
+ throw new Test262Error('#2: (\\u000B1\\u000B) === 1');
+}
+
+//CHECK#3
+if (eval("(\u000C1\u000C)") !== 1) {
+ throw new Test262Error('#3: (\\u000C1\\u000C) === 1');
+}
+
+//CHECK#4
+if (eval("(\u00201\u0020)") !== 1) {
+ throw new Test262Error('#4: (\\u00201\\u0020 === 1');
+}
+
+//CHECK#5
+if (eval("(\u00A01\u00A0)") !== 1) {
+ throw new Test262Error('#5: (\\u00A01\\u00A0) === 1');
+}
+
+//CHECK#6
+if (eval("(\u000A1\u000A)") !== 1) {
+ throw new Test262Error('#6: (\\u000A1\\u000A) === 1');
+}
+
+//CHECK#7
+if (eval("(\u000D1\u000D)") !== 1) {
+ throw new Test262Error('#7: (\\u000D1\\u000D) === 1');
+}
+
+//CHECK#8
+if (eval("(\u20281\u2028)") !== 1) {
+ throw new Test262Error('#8: (\\u20281\\u2028) === 1');
+}
+
+//CHECK#9
+if (eval("(\u20291\u2029)") !== 1) {
+ throw new Test262Error('#9: (\\u20291\\u2029) === 1');
+}
+
+//CHECK#10
+if (eval("(\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u20291\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029)") !== 1) {
+ throw new Test262Error('#10: (\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u20291\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029) === 1');
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T1.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T1.js
new file mode 100644
index 0000000000..422794e8c2
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T1.js
@@ -0,0 +1,30 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: |
+ "This" operator doesn't use GetValue. The operators "delete" and "typeof"
+ can be applied to parenthesised expressions
+es5id: 11.1.6_A2_T1
+description: >
+ Applying "delete" and "typeof" operators to an undefined variable
+ and a property of an object
+---*/
+
+//CHECK#1
+if (typeof (x) !== "undefined") {
+ throw new Test262Error('#1: typeof (x) === "undefined". Actual: ' + (typeof (x)));
+}
+
+var object = {};
+//CHECK#2
+if (delete (object.prop) !== true) {
+ throw new Test262Error('#2: var object = {}; delete (object.prop) === true');
+}
+
+//CHECK#3
+if (typeof (object.prop) !== "undefined") {
+ throw new Test262Error('#3: var object = {}; typeof (object.prop) === "undefined". Actual: ' + (typeof (object.prop)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T2.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T2.js
new file mode 100644
index 0000000000..974abf0459
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A2_T2.js
@@ -0,0 +1,19 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: |
+ "This" operator doesn't use GetValue. The operators "delete" and "typeof"
+ can be applied to parenthesised expressions
+es5id: 11.1.6_A2_T2
+description: >
+ Applying "delete" operator to an undefined variable
+flags: [noStrict]
+---*/
+
+//CHECK#1
+if (delete (x) !== true) {
+ throw new Test262Error('#1: delete (x) === true');
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T1.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T1.js
new file mode 100644
index 0000000000..eba51a8bf6
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T1.js
@@ -0,0 +1,23 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T1
+description: Applying grouping operator to Boolean
+---*/
+
+// Check for Boolean
+
+//CHECK#1
+if ((true) !== true) {
+ throw new Test262Error('#1: (true) === true');
+}
+
+//CHECK#2
+var x = new Boolean(true);
+if ((x) !== x) {
+ throw new Test262Error('#2: var x = new Boolean(true); (x) === x. Actual: ' + ((x)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T2.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T2.js
new file mode 100644
index 0000000000..56333e682a
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T2.js
@@ -0,0 +1,23 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T2
+description: Applying grouping operator to Number
+---*/
+
+//Check for Number
+
+//CHECK#1
+if ((1) !== 1) {
+ throw new Test262Error('#1: (1) === 1. Actual: ' + ((1)));
+}
+
+//CHECK#2
+var x = new Number(1);
+if ((x) !== x) {
+ throw new Test262Error('#2: var x = new Number(1); (x) === x. Actual: ' + ((x)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T3.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T3.js
new file mode 100644
index 0000000000..ab17b6c73b
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T3.js
@@ -0,0 +1,28 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T3
+description: Applying grouping operator to String
+---*/
+
+//Check for String
+
+//CHECK#1
+if (("1") !== "1") {
+ throw new Test262Error('#1: ("1") === "1". Actual: ' + (("1")));
+}
+
+//CHECK#2
+if (("x") !== "x") {
+ throw new Test262Error('#2: ("x") === "x". Actual: ' + (("x")));
+}
+
+//CHECK#3
+var x = new Number("1");
+if ((x) !== x) {
+ throw new Test262Error('#3: var x = new Number("1"); (x) === x. Actual: ' + ((x)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T4.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T4.js
new file mode 100644
index 0000000000..b5ae7c383c
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T4.js
@@ -0,0 +1,27 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T4
+description: Applying grouping operator to undefined
+---*/
+
+//Check for undefined and null
+
+//CHECK#1
+if ((undefined) !== undefined) {
+ throw new Test262Error('#1: (undefined) === undefined. Actual: ' + ((undefined)));
+}
+
+//CHECK#2
+if ((void 0) !== void 0) {
+ throw new Test262Error('#2: (void 0) === void 0. Actual: ' + ((void 0)));
+}
+
+//CHECK#2
+if ((null) !== null) {
+ throw new Test262Error('#2: (null) === null. Actual: ' + ((null)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T6.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T6.js
new file mode 100644
index 0000000000..866c12c238
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T6.js
@@ -0,0 +1,16 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T6
+description: Applying grouping operator to delete operator
+flags: [noStrict]
+---*/
+
+//CHECK#1
+if (delete (x) !== true) {
+ throw new Test262Error('#1: delete (x) === true');
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T7.js b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T7.js
new file mode 100644
index 0000000000..b4394b5f6a
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/S11.1.6_A3_T7.js
@@ -0,0 +1,15 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: "\"This\" operator only evaluates Expression"
+es5id: 11.1.6_A3_T7
+description: Applying grouping operator to typeof operator
+---*/
+
+//CHECK#1
+if (typeof (x) !== "undefined") {
+ throw new Test262Error('#1: typeof (x) === "undefined". Actual: ' + (typeof (x)));
+}
+
+reportCompare(0, 0);
diff --git a/js/src/tests/test262/language/expressions/grouping/browser.js b/js/src/tests/test262/language/expressions/grouping/browser.js
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/browser.js
diff --git a/js/src/tests/test262/language/expressions/grouping/shell.js b/js/src/tests/test262/language/expressions/grouping/shell.js
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/js/src/tests/test262/language/expressions/grouping/shell.js