diff options
Diffstat (limited to 'test/suite/ch11/11.13/11.13.1')
27 files changed, 538 insertions, 517 deletions
diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-1.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-1.js index 551c80478..6377bd282 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-1.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-1.js @@ -1,24 +1,25 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 1)
- *
- * @path ch11/11.13/11.13.1/11.13.1-1-1.js
- * @description simple assignment throws ReferenceError if LeftHandSide is not a reference (number)
- */
-
-
-function testcase() {
- try {
- eval("42 = 42");
- }
- catch (e) {
- if (e instanceof ReferenceError) {
- return true;
- }
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 1) +description: > + simple assignment throws ReferenceError if LeftHandSide is not a + reference (number) +includes: [runTestCase.js] +---*/ + +function testcase() { + try { + eval("42 = 42"); + } + catch (e) { + if (e instanceof ReferenceError) { + return true; + } + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-2.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-2.js index 5abde0d6d..b941c2e59 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-2.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-2.js @@ -1,24 +1,25 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 1).
- *
- * @path ch11/11.13/11.13.1/11.13.1-1-2.js
- * @description simple assignment throws ReferenceError if LeftHandSide is not a reference (string)
- */
-
-
-function testcase() {
- try {
- eval("'x' = 42");
- }
- catch (e) {
- if (e instanceof ReferenceError) {
- return true;
- }
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 1). +description: > + simple assignment throws ReferenceError if LeftHandSide is not a + reference (string) +includes: [runTestCase.js] +---*/ + +function testcase() { + try { + eval("'x' = 42"); + } + catch (e) { + if (e instanceof ReferenceError) { + return true; + } + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-3.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-3.js index 1dbeb18c3..cba984d3e 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-3.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-3.js @@ -1,24 +1,25 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 1).
- *
- * @path ch11/11.13/11.13.1/11.13.1-1-3.js
- * @description simple assignment throws ReferenceError if LeftHandSide is not a reference (boolean)
- */
-
-
-function testcase() {
- try {
- eval("true = 42");
- }
- catch (e) {
- if (e instanceof ReferenceError) {
- return true;
- }
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 1). +description: > + simple assignment throws ReferenceError if LeftHandSide is not a + reference (boolean) +includes: [runTestCase.js] +---*/ + +function testcase() { + try { + eval("true = 42"); + } + catch (e) { + if (e instanceof ReferenceError) { + return true; + } + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-4.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-4.js index dbbfb619b..7b926609c 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-4.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-4.js @@ -1,24 +1,25 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 1).
- *
- * @path ch11/11.13/11.13.1/11.13.1-1-4.js
- * @description simple assignment throws ReferenceError if LeftHandSide is not a reference (null)
- */
-
-
-function testcase() {
- try {
- eval("null = 42");
- }
- catch (e) {
- if (e instanceof ReferenceError) {
- return true;
- }
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 1). +description: > + simple assignment throws ReferenceError if LeftHandSide is not a + reference (null) +includes: [runTestCase.js] +---*/ + +function testcase() { + try { + eval("null = 42"); + } + catch (e) { + if (e instanceof ReferenceError) { + return true; + } + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-6-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-6-s.js index 915caf590..11e3c23e8 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-6-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-6-s.js @@ -1,26 +1,27 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 3.a).
- *
- * @path ch11/11.13/11.13.1/11.13.1-1-6-s.js
- * @description simple assignment throws ReferenceError if LeftHandSide is an unresolvable reference in strict mode (base obj undefined)
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- __ES3_1_test_suite_test_11_13_1_unique_id_0__.x = 42;
- return false;
- }
- catch (e) {
- return (e instanceof ReferenceError);
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 3.a). +description: > + simple assignment throws ReferenceError if LeftHandSide is an + unresolvable reference in strict mode (base obj undefined) +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + __ES3_1_test_suite_test_11_13_1_unique_id_0__.x = 42; + return false; + } + catch (e) { + return (e instanceof ReferenceError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-1-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-1-s.js index 5330f5411..f2646c484 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-1-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-1-s.js @@ -1,30 +1,33 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-1-s.js
- * @description Strict Mode - TypeError is thrown if The LeftHandSide is a reference to a data property with the attribute value {[[Writable]]:false} under strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- var obj = {};
- Object.defineProperty(obj, "prop", {
- value: 10,
- writable: false,
- enumerable: true,
- configurable: true
- });
-
- try {
- obj.prop = 20;
- return false;
- } catch (e) {
- return e instanceof TypeError && obj.prop === 10;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - TypeError is thrown if The LeftHandSide is a + reference to a data property with the attribute value + {[[Writable]]:false} under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var obj = {}; + Object.defineProperty(obj, "prop", { + value: 10, + writable: false, + enumerable: true, + configurable: true + }); + + try { + obj.prop = 20; + return false; + } catch (e) { + return e instanceof TypeError && obj.prop === 10; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-2-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-2-s.js index f16e19d18..6b8ab54f2 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-2-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-2-s.js @@ -1,32 +1,35 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-2-s.js
- * @description Strict Mode - TypeError is thrown if The LeftHandSide is a reference to an accessor property with the attribute value {[[Set]]:undefined} under strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- var obj = {};
- Object.defineProperty(obj, "prop", {
- get: function () {
- return 11;
- },
- set: undefined,
- enumerable: true,
- configurable: true
- });
-
- try {
- obj.prop = 20;
- return false;
- } catch (e) {
- return e instanceof TypeError && obj.prop === 11;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - TypeError is thrown if The LeftHandSide is a + reference to an accessor property with the attribute value + {[[Set]]:undefined} under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var obj = {}; + Object.defineProperty(obj, "prop", { + get: function () { + return 11; + }, + set: undefined, + enumerable: true, + configurable: true + }); + + try { + obj.prop = 20; + return false; + } catch (e) { + return e instanceof TypeError && obj.prop === 11; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-3-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-3-s.js index 79d23670e..5457909cc 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-3-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-3-s.js @@ -1,25 +1,29 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-3-s.js
- * @description Strict Mode - TypeError is thrown if The LeftHandSide is a reference to a non-existent property of an object whose [[Extensible]] internal property has the value false under strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- var obj = {};
- Object.preventExtensions(obj);
-
- try {
- obj.len = 10;
- return false;
- } catch (e) {
- return e instanceof TypeError;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - TypeError is thrown if The LeftHandSide is a + reference to a non-existent property of an object whose + [[Extensible]] internal property has the value false under strict + mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var obj = {}; + Object.preventExtensions(obj); + + try { + obj.len = 10; + return false; + } catch (e) { + return e instanceof TypeError; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-1.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-1.js index 04e93c38d..319c1f2b4 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-1.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-1.js @@ -1,29 +1,32 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * PutValue operates only on references (see step 3.b).
- *
- * @path ch11/11.13/11.13.1/11.13.1-4-1.js
- * @description simple assignment creates property on the global object if LeftHandSide is an unresolvable reference
- */
-
-
-function testcase() {
- function foo() {
- __ES3_1_test_suite_test_11_13_1_unique_id_3__ = 42;
- }
- foo();
-
- var desc = Object.getOwnPropertyDescriptor(fnGlobalObject(), '__ES3_1_test_suite_test_11_13_1_unique_id_3__');
- if (desc.value === 42 &&
- desc.writable === true &&
- desc.enumerable === true &&
- desc.configurable === true) {
- delete __ES3_1_test_suite_test_11_13_1_unique_id_3__;
- return true;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +info: PutValue operates only on references (see step 3.b). +description: > + simple assignment creates property on the global object if + LeftHandSide is an unresolvable reference +includes: + - runTestCase.js + - fnGlobalObject.js +---*/ + +function testcase() { + function foo() { + __ES3_1_test_suite_test_11_13_1_unique_id_3__ = 42; + } + foo(); + + var desc = Object.getOwnPropertyDescriptor(fnGlobalObject(), '__ES3_1_test_suite_test_11_13_1_unique_id_3__'); + if (desc.value === 42 && + desc.writable === true && + desc.enumerable === true && + desc.configurable === true) { + delete __ES3_1_test_suite_test_11_13_1_unique_id_3__; + return true; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-14-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-14-s.js index e82720d70..96dd765f7 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-14-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-14-s.js @@ -1,24 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-14-s.js
- * @description simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Number.MAX_VALUE)
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- Number.MAX_VALUE = 42;
- return false;
- }
- catch (e) {
- return (e instanceof TypeError);
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + simple assignment throws TypeError if LeftHandSide is a readonly + property in strict mode (Number.MAX_VALUE) +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + Number.MAX_VALUE = 42; + return false; + } + catch (e) { + return (e instanceof TypeError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-27-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-27-s.js index 00da46eda..026676ae3 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-27-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-27-s.js @@ -1,23 +1,27 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-27-s.js
- * @description simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Global.undefined)
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- fnGlobalObject().undefined = 42;
- return false;
- }
- catch (e) {
- return (e instanceof TypeError);
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + simple assignment throws TypeError if LeftHandSide is a readonly + property in strict mode (Global.undefined) +includes: + - runTestCase.js + - fnGlobalObject.js +---*/ + +function testcase() { + 'use strict'; + + try { + fnGlobalObject().undefined = 42; + return false; + } + catch (e) { + return (e instanceof TypeError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-28-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-28-s.js index 039991a37..f6b3f96b2 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-28-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-28-s.js @@ -1,23 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-28-s.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'eval' appears as the LeftHandSideExpression of simple assignment(=) under strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- var blah = eval;
- try {
- eval("var eval = 20;");
- return false;
- } catch (e) {
- return e instanceof SyntaxError && blah === eval;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'eval' + appears as the LeftHandSideExpression of simple assignment(=) + under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var blah = eval; + try { + eval("var eval = 20;"); + return false; + } catch (e) { + return e instanceof SyntaxError && blah === eval; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-28gs.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-28gs.js index 86867f1ba..651554799 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-28gs.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-28gs.js @@ -1,14 +1,17 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-28gs.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'Math.PI' appears as the LeftHandSideExpression of simple assignment(=)
- * @onlyStrict
- * @negative NotEarlyError
- */
-"use strict";
-throw NotEarlyError;
-Math.PI = 20;
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'Math.PI' + appears as the LeftHandSideExpression of simple assignment(=) +negative: NotEarlyError +flags: [onlyStrict] +---*/ + +"use strict"; +throw NotEarlyError; +Math.PI = 20; diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-29-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-29-s.js index c9a5a404c..f7c667ab7 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-29-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-29-s.js @@ -1,23 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-29-s.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'arguments' appears as the LeftHandSideExpression of simple assignment(=) under strict mode
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- var blah = arguments;
- try {
- eval("var arguments = 20;");
- return false;
- } catch (e) {
- return e instanceof SyntaxError && blah === arguments;
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'arguments' + appears as the LeftHandSideExpression of simple assignment(=) + under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var blah = arguments; + try { + eval("var arguments = 20;"); + return false; + } catch (e) { + return e instanceof SyntaxError && blah === arguments; + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-29gs.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-29gs.js index 86e4f59ce..5e2ef6e4b 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-29gs.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-29gs.js @@ -1,13 +1,16 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-29gs.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'Math.PI' appears as the LeftHandSideExpression of simple assignment(=)
- * @onlyStrict
- * @negative .
- */
-"use strict";
-Math.PI = 20;
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'Math.PI' + appears as the LeftHandSideExpression of simple assignment(=) +negative: . +flags: [onlyStrict] +---*/ + +"use strict"; +Math.PI = 20; diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-3-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-3-s.js index ff4d1710d..087fb92eb 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-3-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-3-s.js @@ -1,24 +1,28 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-3-s.js
- * @description simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Global.Infinity)
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- fnGlobalObject().Infinity = 42;
- return false;
- }
- catch (e) {
- return (e instanceof TypeError);
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + simple assignment throws TypeError if LeftHandSide is a readonly + property in strict mode (Global.Infinity) +flags: [onlyStrict] +includes: + - runTestCase.js + - fnGlobalObject.js +---*/ + +function testcase() { + 'use strict'; + + try { + fnGlobalObject().Infinity = 42; + return false; + } + catch (e) { + return (e instanceof TypeError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-30-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-30-s.js index e494fab1b..03e6ef314 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-30-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-30-s.js @@ -1,24 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-30-s.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'eval' appears as the LeftHandSideExpression (PrimaryExpression) of simple assignment(=) under strict mode
- * @onlyStrict
- */
-
-
-
-function testcase() {
- "use strict";
- var blah = eval;
- try {
- eval("(eval) = 20;");
- return false;
- } catch (e) {
- return e instanceof SyntaxError && blah === eval;
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'eval' + appears as the LeftHandSideExpression (PrimaryExpression) of + simple assignment(=) under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var blah = eval; + try { + eval("(eval) = 20;"); + return false; + } catch (e) { + return e instanceof SyntaxError && blah === eval; + } +} +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-31-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-31-s.js index 1d70a7723..e647e7ab7 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-31-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-31-s.js @@ -1,24 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-31-s.js
- * @description Strict Mode - SyntaxError is thrown if the identifier 'arguments' appears as the LeftHandSideExpression (PrimaryExpression) of simple assignment(=) under strict mode
- * @onlyStrict
- */
-
-
-
-function testcase() {
- "use strict";
- var blah = arguments;
- try {
- eval("(arguments) = 20;");
- return false;
- } catch (e) {
- return e instanceof SyntaxError && blah === arguments;
- }
-}
-runTestCase(testcase);
\ No newline at end of file +// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Strict Mode - SyntaxError is thrown if the identifier 'arguments' + appears as the LeftHandSideExpression (PrimaryExpression) of + simple assignment(=) under strict mode +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + var blah = arguments; + try { + eval("(arguments) = 20;"); + return false; + } catch (e) { + return e instanceof SyntaxError && blah === arguments; + } +} +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/11.13.1-4-6-s.js b/test/suite/ch11/11.13/11.13.1/11.13.1-4-6-s.js index 158152924..08675b340 100644 --- a/test/suite/ch11/11.13/11.13.1/11.13.1-4-6-s.js +++ b/test/suite/ch11/11.13/11.13.1/11.13.1-4-6-s.js @@ -1,24 +1,26 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch11/11.13/11.13.1/11.13.1-4-6-s.js
- * @description simple assignment throws TypeError if LeftHandSide is a readonly property in strict mode (Function.length)
- * @onlyStrict
- */
-
-
-function testcase() {
- 'use strict';
-
- try {
- Function.length = 42;
- return false;
- }
- catch (e) {
- return (e instanceof TypeError);
- }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + simple assignment throws TypeError if LeftHandSide is a readonly + property in strict mode (Function.length) +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + 'use strict'; + + try { + Function.length = 42; + return false; + } + catch (e) { + return (e instanceof TypeError); + } + } +runTestCase(testcase); diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A1.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A1.js index 533091b57..3699daae3 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A1.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A1.js @@ -1,13 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * White Space and Line Terminator between LeftHandSideExpression and "=" or between "=" and AssignmentExpression are allowed - * - * @path ch11/11.13/11.13.1/S11.13.1_A1.js - * @description Checking by using eval - * @noStrict - */ +/*--- +info: > + White Space and Line Terminator between LeftHandSideExpression and "=" or + between "=" and AssignmentExpression are allowed +description: Checking by using eval +flags: [noStrict] +---*/ //CHECK#1 if ((eval("x\u0009=\u0009true")) !== true) { @@ -59,4 +59,3 @@ if ((eval("x\u2029=\u2029true")) !== true) { if ((eval("x\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029=\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029true")) !== true) { $ERROR('#10: (x\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029=\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029true) === true'); } - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T1.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T1.js index 3c3a793ed..83129e9cd 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T1.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T1.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Operator x = y uses GetValue and PutValue - * - * @path ch11/11.13/11.13.1/S11.13.1_A2.1_T1.js - * @description Either AssigmentExpression is not Reference or GetBase is not null - */ +/*--- +info: Operator x = y uses GetValue and PutValue +description: Either AssigmentExpression is not Reference or GetBase is not null +---*/ //CHECK#1 x = 1; @@ -46,5 +44,3 @@ if (objectx.prop !== objecty.prop) { $ERROR('#5: var objectx = new Object(); var objecty = new Object(); objecty.prop = 1; objectx.prop = objecty.prop; objectx !== objecty'); } } - - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T2.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T2.js index 7f48afc64..85444a225 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T2.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T2.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Operator x = y uses GetValue and PutValue - * - * @path ch11/11.13/11.13.1/S11.13.1_A2.1_T2.js - * @description If GetBase(AssigmentExpression) is null, throw ReferenceError - */ +/*--- +info: Operator x = y uses GetValue and PutValue +description: If GetBase(AssigmentExpression) is null, throw ReferenceError +---*/ //CHECK#1 try { @@ -18,4 +16,3 @@ catch (e) { $ERROR('#1.2: x = y throw ReferenceError. Actual: ' + (e)); } } - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T3.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T3.js index 3e153946f..b4114b6ef 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T3.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A2.1_T3.js @@ -1,13 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Operator x = y uses GetValue and PutValue - * - * @path ch11/11.13/11.13.1/S11.13.1_A2.1_T3.js - * @description If Type(LeftHandSideExpression) is not Reference, throw ReferenceError (or SyntaxError) - * @negative - */ +/*--- +info: Operator x = y uses GetValue and PutValue +description: > + If Type(LeftHandSideExpression) is not Reference, throw + ReferenceError (or SyntaxError) +flags: [negative] +---*/ //CHECK#1 try { @@ -21,4 +21,3 @@ catch (e) { 1 = 1; } } - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.1.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.1.js index d02876814..b800de890 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.1.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.1.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Operator x = y PutValue(x, y) - * - * @path ch11/11.13/11.13.1/S11.13.1_A3.1.js - * @description Checking Expression and Variable statements - */ +/*--- +info: Operator x = y PutValue(x, y) +description: Checking Expression and Variable statements +---*/ //CHECK#1 var x = 1; @@ -19,4 +17,3 @@ y = 1; if (y !== 1) { $ERROR('#2: y = 1; y === 1. Actual: ' + (y)); } - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.2.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.2.js index f369e21c3..6174e75a1 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.2.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A3.2.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Operator x = y returns GetValue(y) - * - * @path ch11/11.13/11.13.1/S11.13.1_A3.2.js - * @description Checking Expression and Variable statements - */ +/*--- +info: Operator x = y returns GetValue(y) +description: Checking Expression and Variable statements +---*/ //CHECK#1 var x = 0; @@ -19,4 +17,3 @@ x = 0; if ((x = 1) !== 1) { $ERROR('#2: x = 0; (x = 1) === 1. Actual: ' + ((x = 1))); } - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T1.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T1.js index 5781fbdfc..4f1381df6 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T1.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T1.js @@ -1,18 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * AssignmentExpression : LeftHandSideExpression = AssignmentExpression - * - * @path ch11/11.13/11.13.1/S11.13.1_A4_T1.js - * @description Syntax check - */ +/*--- +info: "AssignmentExpression : LeftHandSideExpression = AssignmentExpression" +description: Syntax check +---*/ //CHECK#1 x = x = 1; if (x !== 1) { $ERROR('#1: The expression x = x = 1 is the same x = (x = 1), not (x = x) = 1. Actual: ' + (x)); } - - - diff --git a/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T2.js b/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T2.js index d1d4ea456..34743b56b 100644 --- a/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T2.js +++ b/test/suite/ch11/11.13/11.13.1/S11.13.1_A4_T2.js @@ -1,12 +1,10 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * AssignmentExpression : LeftHandSideExpression = AssignmentExpression - * - * @path ch11/11.13/11.13.1/S11.13.1_A4_T2.js - * @description Syntax check if "x = x" throws ReferenceError - */ +/*--- +info: "AssignmentExpression : LeftHandSideExpression = AssignmentExpression" +description: Syntax check if "x = x" throws ReferenceError +---*/ //CHECK#1 try { @@ -17,6 +15,3 @@ try { $ERROR('#1.2: x = x throw ReferenceError. Actual: ' + (e)); } } - - - |