diff options
Diffstat (limited to 'test/suite/ch13/13.2')
115 files changed, 1534 insertions, 1611 deletions
diff --git a/test/suite/ch13/13.2/13.2-1-s.js b/test/suite/ch13/13.2/13.2-1-s.js index 9b3b7e1d7..b2ae3734f 100644 --- a/test/suite/ch13/13.2/13.2-1-s.js +++ b/test/suite/ch13/13.2/13.2-1-s.js @@ -1,22 +1,24 @@ -/// 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 ch13/13.2/13.2-1-s.js
- * @description StrictMode - Writing or reading from a property named 'caller' of function objects is allowed under both strict and normal modes.
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
-
- var foo = function () {
- this.caller = 12;
- }
- var obj = new foo();
- return obj.caller === 12;
- }
-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: > + StrictMode - Writing or reading from a property named 'caller' of + function objects is allowed under both strict and normal modes. +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + + var foo = function () { + this.caller = 12; + } + var obj = new foo(); + return obj.caller === 12; + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-10-s.js b/test/suite/ch13/13.2/13.2-10-s.js index 9ab52ea93..c132fffc5 100644 --- a/test/suite/ch13/13.2/13.2-10-s.js +++ b/test/suite/ch13/13.2/13.2-10-s.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.
-/**
- * @path ch13/13.2/13.2-10-s.js
- * @description StrictMode - writing a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
- try {
- foo.caller = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + try { + foo.caller = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-11-s.js b/test/suite/ch13/13.2/13.2-11-s.js index f08680ceb..b2bdd9e64 100644 --- a/test/suite/ch13/13.2/13.2-11-s.js +++ b/test/suite/ch13/13.2/13.2-11-s.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.
-/**
- * @path ch13/13.2/13.2-11-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails outside of the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
-
- for (var tempIndex in foo) {
- if (tempIndex === "caller") {
- return false;
- }
- }
- return true;
-}
-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: > + StrictMode - enumerating over a function object looking for + 'caller' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + + for (var tempIndex in foo) { + if (tempIndex === "caller") { + return false; + } + } + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-12-s.js b/test/suite/ch13/13.2/13.2-12-s.js index ecb9ae413..e81d0fda5 100644 --- a/test/suite/ch13/13.2/13.2-12-s.js +++ b/test/suite/ch13/13.2/13.2-12-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-12-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails inside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;");
- return foo();
-}
-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: > + StrictMode - enumerating over a function object looking for + 'caller' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;"); + return foo(); +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-13-s.js b/test/suite/ch13/13.2/13.2-13-s.js index 2a087ddad..3a33028f1 100644 --- a/test/suite/ch13/13.2/13.2-13-s.js +++ b/test/suite/ch13/13.2/13.2-13-s.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.
-/**
- * @path ch13/13.2/13.2-13-s.js
- * @description StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = new Function("'use strict';");
- try {
- var temp = foo.arguments;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - reading a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + try { + var temp = foo.arguments; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-14-s.js b/test/suite/ch13/13.2/13.2-14-s.js index 53b9bf021..27de01ea2 100644 --- a/test/suite/ch13/13.2/13.2-14-s.js +++ b/test/suite/ch13/13.2/13.2-14-s.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.
-/**
- * @path ch13/13.2/13.2-14-s.js
- * @description StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = new Function("'use strict';");
- try {
- foo.arguments = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + try { + foo.arguments = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-15-1.js b/test/suite/ch13/13.2/13.2-15-1.js index 7575c6037..3c1c6f974 100644 --- a/test/suite/ch13/13.2/13.2-15-1.js +++ b/test/suite/ch13/13.2/13.2-15-1.js @@ -1,35 +1,37 @@ -/// 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 ch13/13.2/13.2-15-1.js
- * @description Function Object has length as its own property and does not invoke the setter defined on Function.prototype.length (Step 15)
- */
-
-
-function testcase() {
- var fun = function (x, y) { };
-
- var verifyValue = false;
- verifyValue = (fun.hasOwnProperty("length") && fun.length === 2);
-
- var verifyWritable = false;
- fun.length = 1001;
- verifyWritable = (fun.length === 1001);
-
- var verifyEnumerable = false;
- for (var p in fun) {
- if (p === "length") {
- verifyEnumerable = true;
- }
- }
-
- var verifyConfigurable = false;
- delete fun.length;
- verifyConfigurable = fun.hasOwnProperty("length");
-
- return verifyValue && !verifyWritable && !verifyEnumerable && verifyConfigurable;
- }
-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: > + Function Object has length as its own property and does not invoke + the setter defined on Function.prototype.length (Step 15) +includes: [runTestCase.js] +---*/ + +function testcase() { + var fun = function (x, y) { }; + + var verifyValue = false; + verifyValue = (fun.hasOwnProperty("length") && fun.length === 2); + + var verifyWritable = false; + fun.length = 1001; + verifyWritable = (fun.length === 1001); + + var verifyEnumerable = false; + for (var p in fun) { + if (p === "length") { + verifyEnumerable = true; + } + } + + var verifyConfigurable = false; + delete fun.length; + verifyConfigurable = fun.hasOwnProperty("length"); + + return verifyValue && !verifyWritable && !verifyEnumerable && verifyConfigurable; + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-15-s.js b/test/suite/ch13/13.2/13.2-15-s.js index b14dd3cad..2986330fb 100644 --- a/test/suite/ch13/13.2/13.2-15-s.js +++ b/test/suite/ch13/13.2/13.2-15-s.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.
-/**
- * @path ch13/13.2/13.2-15-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails outside of the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = new Function("'use strict';");
-
- for (var tempIndex in foo) {
- if (tempIndex === "arguments") {
- return false;
- }
- }
- return true;
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + + for (var tempIndex in foo) { + if (tempIndex === "arguments") { + return false; + } + } + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-16-s.js b/test/suite/ch13/13.2/13.2-16-s.js index 154887e9a..bfb558f64 100644 --- a/test/suite/ch13/13.2/13.2-16-s.js +++ b/test/suite/ch13/13.2/13.2-16-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-16-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails inside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;");
- return foo();
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;"); + return foo(); +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-17-1.js b/test/suite/ch13/13.2/13.2-17-1.js index 654f2b5dd..ae408d8d6 100644 --- a/test/suite/ch13/13.2/13.2-17-1.js +++ b/test/suite/ch13/13.2/13.2-17-1.js @@ -1,55 +1,58 @@ -/// 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 ch13/13.2/13.2-17-1.js
- * @description Function Object has 'constructor' as its own property, it is not enumerable and does not invoke the setter defined on Function.prototype.constructor (Step 17)
- */
-
-
-function testcase() {
- var desc = Object.getOwnPropertyDescriptor(Object.prototype, "constructor");
- try {
- var getFunc = function () {
- return 100;
- };
-
- var data = "data";
- var setFunc = function (value) {
- data = value;
- };
-
- Object.defineProperty(Object.prototype, "constructor", {
- get: getFunc,
- set: setFunc,
- configurable: true
- });
-
- var fun = function () {};
-
- var verifyValue = false;
- verifyValue = typeof fun.prototype.constructor === "function";
-
- var verifyEnumerable = false;
- for (var p in fun.prototype) {
- if (p === "constructor" && fun.prototype.hasOwnProperty("constructor")) {
- verifyEnumerable = true;
- }
- }
-
- var verifyWritable = false;
- fun.prototype.constructor = 12;
- verifyWritable = (fun.prototype.constructor === 12);
-
- var verifyConfigurable = false;
- delete fun.prototype.constructor;
- verifyConfigurable = fun.hasOwnProperty("constructor");
-
- return verifyValue && verifyWritable && !verifyEnumerable && !verifyConfigurable && data === "data";
- } finally {
- Object.defineProperty(Object.prototype, "constructor", desc);
- }
- }
-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: > + Function Object has 'constructor' as its own property, it is not + enumerable and does not invoke the setter defined on + Function.prototype.constructor (Step 17) +includes: [runTestCase.js] +---*/ + +function testcase() { + var desc = Object.getOwnPropertyDescriptor(Object.prototype, "constructor"); + try { + var getFunc = function () { + return 100; + }; + + var data = "data"; + var setFunc = function (value) { + data = value; + }; + + Object.defineProperty(Object.prototype, "constructor", { + get: getFunc, + set: setFunc, + configurable: true + }); + + var fun = function () {}; + + var verifyValue = false; + verifyValue = typeof fun.prototype.constructor === "function"; + + var verifyEnumerable = false; + for (var p in fun.prototype) { + if (p === "constructor" && fun.prototype.hasOwnProperty("constructor")) { + verifyEnumerable = true; + } + } + + var verifyWritable = false; + fun.prototype.constructor = 12; + verifyWritable = (fun.prototype.constructor === 12); + + var verifyConfigurable = false; + delete fun.prototype.constructor; + verifyConfigurable = fun.hasOwnProperty("constructor"); + + return verifyValue && verifyWritable && !verifyEnumerable && !verifyConfigurable && data === "data"; + } finally { + Object.defineProperty(Object.prototype, "constructor", desc); + } + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-17-s.js b/test/suite/ch13/13.2/13.2-17-s.js index 6ff1776b6..61012ecdb 100644 --- a/test/suite/ch13/13.2/13.2-17-s.js +++ b/test/suite/ch13/13.2/13.2-17-s.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.
-/**
- * @path ch13/13.2/13.2-17-s.js
- * @description StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
- try {
- var temp = foo.arguments;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - reading a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + try { + var temp = foo.arguments; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-18-1.js b/test/suite/ch13/13.2/13.2-18-1.js index d3614872c..acd203445 100644 --- a/test/suite/ch13/13.2/13.2-18-1.js +++ b/test/suite/ch13/13.2/13.2-18-1.js @@ -1,53 +1,56 @@ -/// 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 ch13/13.2/13.2-18-1.js
- * @description Function Object has 'prototype' as its own property, it is not enumerable and does not invoke the setter defined on Function.prototype (Step 18)
- */
-
-
-function testcase() {
- try {
- var getFunc = function () {
- return 100;
- };
-
- var data = "data";
- var setFunc = function (value) {
- data = value;
- };
- Object.defineProperty(Function.prototype, "prototype", {
- get: getFunc,
- set: setFunc,
- configurable: true
- });
-
- var fun = function () { };
-
- var verifyValue = false;
- verifyValue = (fun.prototype !== 100 && fun.prototype.toString() === "[object Object]");
-
- var verifyEnumerable = false;
- for (var p in fun) {
- if (p === "prototype" && fun.hasOwnProperty("prototype")) {
- verifyEnumerable = true;
- }
- }
-
- var verifyConfigurable = false;
- delete fun.prototype;
- verifyConfigurable = fun.hasOwnProperty("prototype");
-
- var verifyWritable = false;
- fun.prototype = 12
- verifyWritable = (fun.prototype === 12);
-
- return verifyValue && verifyWritable && !verifyEnumerable && verifyConfigurable && data === "data";
- } finally {
- delete Function.prototype.prototype;
- }
- }
-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: > + Function Object has 'prototype' as its own property, it is not + enumerable and does not invoke the setter defined on + Function.prototype (Step 18) +includes: [runTestCase.js] +---*/ + +function testcase() { + try { + var getFunc = function () { + return 100; + }; + + var data = "data"; + var setFunc = function (value) { + data = value; + }; + Object.defineProperty(Function.prototype, "prototype", { + get: getFunc, + set: setFunc, + configurable: true + }); + + var fun = function () { }; + + var verifyValue = false; + verifyValue = (fun.prototype !== 100 && fun.prototype.toString() === "[object Object]"); + + var verifyEnumerable = false; + for (var p in fun) { + if (p === "prototype" && fun.hasOwnProperty("prototype")) { + verifyEnumerable = true; + } + } + + var verifyConfigurable = false; + delete fun.prototype; + verifyConfigurable = fun.hasOwnProperty("prototype"); + + var verifyWritable = false; + fun.prototype = 12 + verifyWritable = (fun.prototype === 12); + + return verifyValue && verifyWritable && !verifyEnumerable && verifyConfigurable && data === "data"; + } finally { + delete Function.prototype.prototype; + } + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-18-s.js b/test/suite/ch13/13.2/13.2-18-s.js index c0ac07cc9..2cc2a0e3b 100644 --- a/test/suite/ch13/13.2/13.2-18-s.js +++ b/test/suite/ch13/13.2/13.2-18-s.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.
-/**
- * @path ch13/13.2/13.2-18-s.js
- * @description StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
- try {
- foo.arguments = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + try { + foo.arguments = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-19-b-3gs.js b/test/suite/ch13/13.2/13.2-19-b-3gs.js index cd356070d..78d9c1ee3 100644 --- a/test/suite/ch13/13.2/13.2-19-b-3gs.js +++ b/test/suite/ch13/13.2/13.2-19-b-3gs.js @@ -1,15 +1,18 @@ -/// 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 ch13/13.2/13.2-19-b-3gs.js
- * @description StrictMode - error is thrown when assign a value to the 'caller' property of a function object
- * @onlyStrict
- * @negative NotEarlyError
- */
-"use strict";
-throw NotEarlyError;
-function _13_2_19_b_3_gs() {}
-_13_2_19_b_3_gs.caller = 1;
+// 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: > + StrictMode - error is thrown when assign a value to the 'caller' + property of a function object +negative: NotEarlyError +flags: [onlyStrict] +---*/ + +"use strict"; +throw NotEarlyError; +function _13_2_19_b_3_gs() {} +_13_2_19_b_3_gs.caller = 1; diff --git a/test/suite/ch13/13.2/13.2-19-s.js b/test/suite/ch13/13.2/13.2-19-s.js index 5e8b67e6a..06e9a2e46 100644 --- a/test/suite/ch13/13.2/13.2-19-s.js +++ b/test/suite/ch13/13.2/13.2-19-s.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.
-/**
- * @path ch13/13.2/13.2-19-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails outside of the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
-
- for (var tempIndex in foo) {
- if (tempIndex === "arguments") {
- return false;
- }
- }
- return true;
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + + for (var tempIndex in foo) { + if (tempIndex === "arguments") { + return false; + } + } + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-2-s.js b/test/suite/ch13/13.2/13.2-2-s.js index f2bdf6898..800d5b45d 100644 --- a/test/suite/ch13/13.2/13.2-2-s.js +++ b/test/suite/ch13/13.2/13.2-2-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 ch13/13.2/13.2-2-s.js
- * @description StrictMode - A TypeError is thrown when a strict mode code writes to properties named 'caller' of function instances.
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- try {
- var foo = function () {
- }
- foo.caller = 20;
- return false;
- } catch (ex) {
- return ex 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: > + StrictMode - A TypeError is thrown when a strict mode code writes + to properties named 'caller' of function instances. +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + try { + var foo = function () { + } + foo.caller = 20; + return false; + } catch (ex) { + return ex instanceof TypeError; + } + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-20-s.js b/test/suite/ch13/13.2/13.2-20-s.js index 5eee4a321..f4ad42f65 100644 --- a/test/suite/ch13/13.2/13.2-20-s.js +++ b/test/suite/ch13/13.2/13.2-20-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-20-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails inside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;");
- return foo();
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"arguments\") {return false;}}; return true;"); + return foo(); +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-21-s.js b/test/suite/ch13/13.2/13.2-21-s.js index 42ad83815..e27b478e0 100644 --- a/test/suite/ch13/13.2/13.2-21-s.js +++ b/test/suite/ch13/13.2/13.2-21-s.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.
-/**
- * @path ch13/13.2/13.2-21-s.js
- * @description StrictMode - reading a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
- try {
- var temp = foo.caller;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - reading a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + try { + var temp = foo.caller; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-22-s.js b/test/suite/ch13/13.2/13.2-22-s.js index ab901903c..094a8b118 100644 --- a/test/suite/ch13/13.2/13.2-22-s.js +++ b/test/suite/ch13/13.2/13.2-22-s.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.
-/**
- * @path ch13/13.2/13.2-22-s.js
- * @description StrictMode - writing a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
- try {
- foo.caller = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + try { + foo.caller = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-23-s.js b/test/suite/ch13/13.2/13.2-23-s.js index 0e89b66ae..019770605 100644 --- a/test/suite/ch13/13.2/13.2-23-s.js +++ b/test/suite/ch13/13.2/13.2-23-s.js @@ -1,23 +1,24 @@ -/// 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 ch13/13.2/13.2-23-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails outside of the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
- for (var tempIndex in foo) {
- if (tempIndex === "caller") {
- return false;
- }
- }
- return true;
-}
-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: > + StrictMode - enumerating over a function object looking for + 'caller' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + for (var tempIndex in foo) { + if (tempIndex === "caller") { + return false; + } + } + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-24-s.js b/test/suite/ch13/13.2/13.2-24-s.js index f9008fc56..2ef269683 100644 --- a/test/suite/ch13/13.2/13.2-24-s.js +++ b/test/suite/ch13/13.2/13.2-24-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.
-/**
- * @path ch13/13.2/13.2-24-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails inside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {
- "use strict";
- for (var tempIndex in this) {
- if (tempIndex==="caller") {
- return false;
- }
- }
- return true;
- }
- return foo();
-}
-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: > + StrictMode - enumerating over a function object looking for + 'caller' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () { + "use strict"; + for (var tempIndex in this) { + if (tempIndex==="caller") { + return false; + } + } + return true; + } + return foo(); +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-25-s.js b/test/suite/ch13/13.2/13.2-25-s.js index b4c650897..27d4b32ad 100644 --- a/test/suite/ch13/13.2/13.2-25-s.js +++ b/test/suite/ch13/13.2/13.2-25-s.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.
-/**
- * @path ch13/13.2/13.2-25-s.js
- * @description StrictMode - reading a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
- try {
- var temp = foo.arguments;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - reading a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + try { + var temp = foo.arguments; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-26-s.js b/test/suite/ch13/13.2/13.2-26-s.js index 68682ce31..0e4d0a8d6 100644 --- a/test/suite/ch13/13.2/13.2-26-s.js +++ b/test/suite/ch13/13.2/13.2-26-s.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.
-/**
- * @path ch13/13.2/13.2-26-s.js
- * @description StrictMode - writing a property named 'arguments' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
- try {
- foo.arguments = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'arguments' of function + objects is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + try { + foo.arguments = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-27-s.js b/test/suite/ch13/13.2/13.2-27-s.js index d6177986a..c640ad673 100644 --- a/test/suite/ch13/13.2/13.2-27-s.js +++ b/test/suite/ch13/13.2/13.2-27-s.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.
-/**
- * @path ch13/13.2/13.2-27-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails outside of the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo () {"use strict";}
-
- for (var tempIndex in foo) {
- if (tempIndex === "arguments") {
- return false;
- }
- }
- return true;
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo () {"use strict";} + + for (var tempIndex in foo) { + if (tempIndex === "arguments") { + return false; + } + } + return true; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-28-s.js b/test/suite/ch13/13.2/13.2-28-s.js index dd9dad3ee..955938503 100644 --- a/test/suite/ch13/13.2/13.2-28-s.js +++ b/test/suite/ch13/13.2/13.2-28-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.
-/**
- * @path ch13/13.2/13.2-28-s.js
- * @description StrictMode - enumerating over a function object looking for 'arguments' fails inside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo() {
- "use strict";
- for (var tempIndex in this) {
- if (tempIndex==="arguments") {
- return false;
- }
- }
- return true;
- }
- return foo();
-}
-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: > + StrictMode - enumerating over a function object looking for + 'arguments' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo() { + "use strict"; + for (var tempIndex in this) { + if (tempIndex==="arguments") { + return false; + } + } + return true; + } + return foo(); +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-29-s.js b/test/suite/ch13/13.2/13.2-29-s.js index 8f2b59d39..7ddc4a82b 100644 --- a/test/suite/ch13/13.2/13.2-29-s.js +++ b/test/suite/ch13/13.2/13.2-29-s.js @@ -1,19 +1,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.
-/**
- * @path ch13/13.2/13.2-29-s.js
- * @description StrictMode - property named 'caller' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo() {"use strict";}
- return ! Object.getOwnPropertyDescriptor(foo,
- "caller").configurable;
-}
-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: > + StrictMode - property named 'caller' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo() {"use strict";} + return ! Object.getOwnPropertyDescriptor(foo, + "caller").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-3-s.js b/test/suite/ch13/13.2/13.2-3-s.js index 642f417c7..bd49fe9ad 100644 --- a/test/suite/ch13/13.2/13.2-3-s.js +++ b/test/suite/ch13/13.2/13.2-3-s.js @@ -1,22 +1,24 @@ -/// 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 ch13/13.2/13.2-3-s.js
- * @description StrictMode - Writing or reading from a property named 'arguments' of function objects is allowed under both strict and normal modes.
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
-
- var foo = function () {
- this.arguments = 12;
- }
- var obj = new foo();
- return obj.arguments === 12;
- }
-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: > + StrictMode - Writing or reading from a property named 'arguments' + of function objects is allowed under both strict and normal modes. +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + + var foo = function () { + this.arguments = 12; + } + var obj = new foo(); + return obj.arguments === 12; + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-30-s.js b/test/suite/ch13/13.2/13.2-30-s.js index fd531f4c5..2103f5ec2 100644 --- a/test/suite/ch13/13.2/13.2-30-s.js +++ b/test/suite/ch13/13.2/13.2-30-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-30-s.js
- * @description StrictMode - property named 'caller' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- return ! Object.getOwnPropertyDescriptor(Function("'use strict';"),
- "caller").configurable;
-}
-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: > + StrictMode - property named 'caller' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + return ! Object.getOwnPropertyDescriptor(Function("'use strict';"), + "caller").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-31-s.js b/test/suite/ch13/13.2/13.2-31-s.js index e5693beb9..48da5a92b 100644 --- a/test/suite/ch13/13.2/13.2-31-s.js +++ b/test/suite/ch13/13.2/13.2-31-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-31-s.js
- * @description StrictMode - property named 'caller' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- return ! Object.getOwnPropertyDescriptor(new Function("'use strict';"),
- "caller").configurable;
-}
-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: > + StrictMode - property named 'caller' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + return ! Object.getOwnPropertyDescriptor(new Function("'use strict';"), + "caller").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-32-s.js b/test/suite/ch13/13.2/13.2-32-s.js index cc0c1f9ca..929d2bba3 100644 --- a/test/suite/ch13/13.2/13.2-32-s.js +++ b/test/suite/ch13/13.2/13.2-32-s.js @@ -1,19 +1,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.
-/**
- * @path ch13/13.2/13.2-32-s.js
- * @description StrictMode - property named 'caller' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var funcExpr = function () { "use strict";};
- return ! Object.getOwnPropertyDescriptor(funcExpr,
- "caller").configurable;
-}
-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: > + StrictMode - property named 'caller' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var funcExpr = function () { "use strict";}; + return ! Object.getOwnPropertyDescriptor(funcExpr, + "caller").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-33-s.js b/test/suite/ch13/13.2/13.2-33-s.js index 602a0d808..0bc11d980 100644 --- a/test/suite/ch13/13.2/13.2-33-s.js +++ b/test/suite/ch13/13.2/13.2-33-s.js @@ -1,19 +1,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.
-/**
- * @path ch13/13.2/13.2-33-s.js
- * @description StrictMode - property named 'arguments' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- function foo() {"use strict";}
- return ! Object.getOwnPropertyDescriptor(foo,
- "arguments").configurable;
-}
-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: > + StrictMode - property named 'arguments' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + function foo() {"use strict";} + return ! Object.getOwnPropertyDescriptor(foo, + "arguments").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-34-s.js b/test/suite/ch13/13.2/13.2-34-s.js index 81f9fd0d7..23a9d2af2 100644 --- a/test/suite/ch13/13.2/13.2-34-s.js +++ b/test/suite/ch13/13.2/13.2-34-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-34-s.js
- * @description StrictMode - property named 'arguments' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- return ! Object.getOwnPropertyDescriptor(Function("'use strict';"),
- "arguments").configurable;
-}
-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: > + StrictMode - property named 'arguments' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + return ! Object.getOwnPropertyDescriptor(Function("'use strict';"), + "arguments").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-35-s.js b/test/suite/ch13/13.2/13.2-35-s.js index e6031df2d..c1da63eaf 100644 --- a/test/suite/ch13/13.2/13.2-35-s.js +++ b/test/suite/ch13/13.2/13.2-35-s.js @@ -1,18 +1,19 @@ -/// 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 ch13/13.2/13.2-35-s.js
- * @description StrictMode - property named 'arguments' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- return ! Object.getOwnPropertyDescriptor(new Function("'use strict';"),
- "arguments").configurable;
-}
-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: > + StrictMode - property named 'arguments' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + return ! Object.getOwnPropertyDescriptor(new Function("'use strict';"), + "arguments").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-36-s.js b/test/suite/ch13/13.2/13.2-36-s.js index 4e958dee0..0b13df082 100644 --- a/test/suite/ch13/13.2/13.2-36-s.js +++ b/test/suite/ch13/13.2/13.2-36-s.js @@ -1,19 +1,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.
-/**
- * @path ch13/13.2/13.2-36-s.js
- * @description StrictMode - property named 'arguments' of function objects is not configurable
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var funcExpr = function () { "use strict";};
- return ! Object.getOwnPropertyDescriptor(funcExpr,
- "arguments").configurable;
-}
-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: > + StrictMode - property named 'arguments' of function objects is not + configurable +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var funcExpr = function () { "use strict";}; + return ! Object.getOwnPropertyDescriptor(funcExpr, + "arguments").configurable; +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-4-s.js b/test/suite/ch13/13.2/13.2-4-s.js index 82981f467..ddc05e571 100644 --- a/test/suite/ch13/13.2/13.2-4-s.js +++ b/test/suite/ch13/13.2/13.2-4-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 ch13/13.2/13.2-4-s.js
- * @description StrictMode - A TypeError is thrown when a code in strict mode tries to write to 'arguments' of function instances.
- * @onlyStrict
- */
-
-
-function testcase() {
- "use strict";
- try {
- var foo = function () {
- }
- foo.arguments = 20;
- return false;
- } catch (ex) {
- return ex 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: > + StrictMode - A TypeError is thrown when a code in strict mode + tries to write to 'arguments' of function instances. +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + "use strict"; + try { + var foo = function () { + } + foo.arguments = 20; + return false; + } catch (ex) { + return ex instanceof TypeError; + } + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-5-s.js b/test/suite/ch13/13.2/13.2-5-s.js index 2512e5ef0..8a705158a 100644 --- a/test/suite/ch13/13.2/13.2-5-s.js +++ b/test/suite/ch13/13.2/13.2-5-s.js @@ -1,23 +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.
-/**
- * @path ch13/13.2/13.2-5-s.js
- * @description StrictMode - reading a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-function testcase() {
- var foo = new Function("'use strict';");
- try {
- var temp = foo.caller;
- 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: > + StrictMode - reading a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + try { + var temp = foo.caller; + return false; + } + catch (e) { + return e instanceof TypeError; + } + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-6-s.js b/test/suite/ch13/13.2/13.2-6-s.js index 5b6de1de9..c5848058a 100644 --- a/test/suite/ch13/13.2/13.2-6-s.js +++ b/test/suite/ch13/13.2/13.2-6-s.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.
-/**
- * @path ch13/13.2/13.2-6-s.js
- * @description StrictMode - writing a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = new Function("'use strict';");
- try {
- foo.caller = 41;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - writing a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + try { + foo.caller = 41; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-7-s.js b/test/suite/ch13/13.2/13.2-7-s.js index 2b5fbb185..b50034aca 100644 --- a/test/suite/ch13/13.2/13.2-7-s.js +++ b/test/suite/ch13/13.2/13.2-7-s.js @@ -1,23 +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.
-/**
- * @path ch13/13.2/13.2-7-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails outside of the function
- * @onlyStrict
- */
-
-
-function testcase() {
- var foo = new Function("'use strict';");
-
- for (var tempIndex in foo) {
- if (tempIndex === "caller") {
- return false;
- }
- }
- 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. + +/*--- +description: > + StrictMode - enumerating over a function object looking for + 'caller' fails outside of the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict';"); + + for (var tempIndex in foo) { + if (tempIndex === "caller") { + return false; + } + } + return true; + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-8-s.js b/test/suite/ch13/13.2/13.2-8-s.js index 42bcc07d9..62b560ce6 100644 --- a/test/suite/ch13/13.2/13.2-8-s.js +++ b/test/suite/ch13/13.2/13.2-8-s.js @@ -1,17 +1,19 @@ -/// 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 ch13/13.2/13.2-8-s.js
- * @description StrictMode - enumerating over a function object looking for 'caller' fails inside the function
- * @onlyStrict
- */
-
-
-function testcase() {
- var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;");
- return foo();
- }
-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: > + StrictMode - enumerating over a function object looking for + 'caller' fails inside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = new Function("'use strict'; for (var tempIndex in this) {if (tempIndex===\"caller\") {return false;}}; return true;"); + return foo(); + } +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/13.2-9-s.js b/test/suite/ch13/13.2/13.2-9-s.js index fac6285e6..7ae060575 100644 --- a/test/suite/ch13/13.2/13.2-9-s.js +++ b/test/suite/ch13/13.2/13.2-9-s.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.
-/**
- * @path ch13/13.2/13.2-9-s.js
- * @description StrictMode - reading a property named 'caller' of function objects is not allowed outside the function
- * @onlyStrict
- */
-
-
-
-function testcase() {
- var foo = Function("'use strict';");
- try {
- var temp = foo.caller;
- return false;
- }
- catch (e) {
- return e instanceof TypeError;
- }
-}
-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: > + StrictMode - reading a property named 'caller' of function objects + is not allowed outside the function +flags: [onlyStrict] +includes: [runTestCase.js] +---*/ + +function testcase() { + var foo = Function("'use strict';"); + try { + var temp = foo.caller; + return false; + } + catch (e) { + return e instanceof TypeError; + } +} +runTestCase(testcase); diff --git a/test/suite/ch13/13.2/S13.2.1_A1_T1.js b/test/suite/ch13/13.2/S13.2.1_A1_T1.js index 1295b6a48..f11e55875 100644 --- a/test/suite/ch13/13.2/S13.2.1_A1_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A1_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. -/** - * The depth of nested function calls reaches 32 - * - * @path ch13/13.2/S13.2.1_A1_T1.js - * @description Creating function calls 32 elements depth - */ +/*--- +info: The depth of nested function calls reaches 32 +description: Creating function calls 32 elements depth +---*/ (function(){ (function(){ @@ -70,5 +68,4 @@ })() })() })() -})() - +})() diff --git a/test/suite/ch13/13.2/S13.2.1_A4_T1.js b/test/suite/ch13/13.2/S13.2.1_A4_T1.js index a2bce3580..2d4189ed5 100644 --- a/test/suite/ch13/13.2/S13.2.1_A4_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A4_T1.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. -/** - * Objects as arguments are passed by reference - * - * @path ch13/13.2/S13.2.1_A4_T1.js - * @description Adding new number property to a function argument within the function body, - * where explicit argument is an object defined with "var __obj={}" - */ +/*--- +info: Objects as arguments are passed by reference +description: > + Adding new number property to a function argument within the + function body, where explicit argument is an object defined with + "var __obj={}" +---*/ function __func(__arg){ __arg.foo=7; @@ -24,4 +24,3 @@ if (__obj.foo !== 7) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A4_T2.js b/test/suite/ch13/13.2/S13.2.1_A4_T2.js index 682f57d08..8881c5311 100644 --- a/test/suite/ch13/13.2/S13.2.1_A4_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A4_T2.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. -/** - * Objects as arguments are passed by reference - * - * @path ch13/13.2/S13.2.1_A4_T2.js - * @description Adding new string property to a function argument within the function body, - * where explicit argument is an object defined with "__obj={}" - */ +/*--- +info: Objects as arguments are passed by reference +description: > + Adding new string property to a function argument within the + function body, where explicit argument is an object defined with + "__obj={}" +---*/ function __func(__arg){ __arg.foo="whiskey gogo"; @@ -24,4 +24,3 @@ if (__obj.foo !== "whiskey gogo") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A4_T3.js b/test/suite/ch13/13.2/S13.2.1_A4_T3.js index 00ee68b10..6cd4c12a4 100644 --- a/test/suite/ch13/13.2/S13.2.1_A4_T3.js +++ b/test/suite/ch13/13.2/S13.2.1_A4_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. -/** - * Objects as arguments are passed by reference - * - * @path ch13/13.2/S13.2.1_A4_T3.js - * @description Adding new number property to a function argument within the function body, - * where array element "arguments[0]" is an object defined with "__obj={}" - */ +/*--- +info: Objects as arguments are passed by reference +description: > + Adding new number property to a function argument within the + function body, where array element "arguments[0]" is an object + defined with "__obj={}" +---*/ function __func(){ arguments[0]["PI"]=3.14; @@ -24,4 +24,3 @@ if (__obj.PI !== 3.14) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A4_T4.js b/test/suite/ch13/13.2/S13.2.1_A4_T4.js index a9a026121..16744343e 100644 --- a/test/suite/ch13/13.2/S13.2.1_A4_T4.js +++ b/test/suite/ch13/13.2/S13.2.1_A4_T4.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. -/** - * Objects as arguments are passed by reference - * - * @path ch13/13.2/S13.2.1_A4_T4.js - * @description Adding new number property to a function argument within the function body, - * where array element "arguments[0]" is an object defined with "var __obj={}" - */ +/*--- +info: Objects as arguments are passed by reference +description: > + Adding new number property to a function argument within the + function body, where array element "arguments[0]" is an object + defined with "var __obj={}" +---*/ function __func(){ arguments[0]["E"]=2.74; @@ -24,4 +24,3 @@ if (__obj.E !== 2.74) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A5_T1.js b/test/suite/ch13/13.2/S13.2.1_A5_T1.js index 81909da90..b0a1fac91 100644 --- a/test/suite/ch13/13.2/S13.2.1_A5_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A5_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. -/** - * Closures are admitted - * - * @path ch13/13.2/S13.2.1_A5_T1.js - * @description Sorting with closure - */ +/*--- +info: Closures are admitted +description: Sorting with closure +---*/ var __arr = [4,3,2,1,4,3,2,1,4,3,2,1]; //Sort uses closure @@ -26,5 +24,4 @@ if (__arr.toString() !== [4,4,4,3,3,3,2,2,2,1,1,1].toString()) { } // -////////////////////////////////////////////////////////////////////////////// - +////////////////////////////////////////////////////////////////////////////// diff --git a/test/suite/ch13/13.2/S13.2.1_A5_T2.js b/test/suite/ch13/13.2/S13.2.1_A5_T2.js index e48402cd6..00d2907bd 100644 --- a/test/suite/ch13/13.2/S13.2.1_A5_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A5_T2.js @@ -1,13 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Closures are admitted - * - * @path ch13/13.2/S13.2.1_A5_T2.js - * @description Returning a function that approximates the derivative of f - * using an interval of dx, which should be appropriately small - */ +/*--- +info: Closures are admitted +description: > + Returning a function that approximates the derivative of f using + an interval of dx, which should be appropriately small +---*/ // Return a function that approximates the derivative of f // using an interval of dx, which should be appropriately small. @@ -24,4 +23,3 @@ if (Math.abs(derivative(Math.sin, 0.0001)(0) - derivative(Math.sin, 0.0001)(2*Ma } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A6_T1.js b/test/suite/ch13/13.2/S13.2.1_A6_T1.js index a1d360b34..ba430f274 100644 --- a/test/suite/ch13/13.2/S13.2.1_A6_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A6_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. -/** - * Primitive types are passed by value - * - * @path ch13/13.2/S13.2.1_A6_T1.js - * @description Declaring a function with "function __func(arg1, arg2)" - */ +/*--- +info: Primitive types are passed by value +description: Declaring a function with "function __func(arg1, arg2)" +---*/ function __func(arg1, arg2){ arg1++; @@ -28,4 +26,3 @@ if (x!==1 || y!==2 || a!=="AB" || b!=="SAM") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A6_T2.js b/test/suite/ch13/13.2/S13.2.1_A6_T2.js index f92bafaf2..36248a729 100644 --- a/test/suite/ch13/13.2/S13.2.1_A6_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A6_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. -/** - * Primitive types are passed by value - * - * @path ch13/13.2/S13.2.1_A6_T2.js - * @description Declaring a function with "__func = function(arg1, arg2)" - */ +/*--- +info: Primitive types are passed by value +description: Declaring a function with "__func = function(arg1, arg2)" +---*/ __func = function(arg1, arg2){ arg1++; @@ -28,4 +26,3 @@ if (x!==1 || y!==2 || a!=="AB" || b!=="SAM") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A7_T1.js b/test/suite/ch13/13.2/S13.2.1_A7_T1.js index 4e46fcafe..db095b177 100644 --- a/test/suite/ch13/13.2/S13.2.1_A7_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A7_T1.js @@ -1,14 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is returned then Result.value is returned too - * - * @path ch13/13.2/S13.2.1_A7_T1.js - * @description Returning null. Declaring a function with "function __func()" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is returned then Result.value is returned too +description: Returning null. Declaring a function with "function __func()" +---*/ function __func(){ var x = null; @@ -24,4 +23,3 @@ try{ } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A7_T2.js b/test/suite/ch13/13.2/S13.2.1_A7_T2.js index ae4fbb406..3328bc55b 100644 --- a/test/suite/ch13/13.2/S13.2.1_A7_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A7_T2.js @@ -1,14 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is returned then Result.value is returned too - * - * @path ch13/13.2/S13.2.1_A7_T2.js - * @description Returning null. Declaring a function with "var __func = function ()" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is returned then Result.value is returned too +description: > + Returning null. Declaring a function with "var __func = function + ()" +---*/ var __func = function (){ var x = null; @@ -24,4 +25,3 @@ try{ } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A7_T3.js b/test/suite/ch13/13.2/S13.2.1_A7_T3.js index efbb8a04d..5cd67c4dc 100644 --- a/test/suite/ch13/13.2/S13.2.1_A7_T3.js +++ b/test/suite/ch13/13.2/S13.2.1_A7_T3.js @@ -1,14 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is returned then Result.value is returned too - * - * @path ch13/13.2/S13.2.1_A7_T3.js - * @description Returning number. Declaring a function with "function __func()" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is returned then Result.value is returned too +description: Returning number. Declaring a function with "function __func()" +includes: [Test262Error.js] +---*/ function __func(){ x = 1; @@ -51,5 +51,3 @@ if (x !== 1) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.1_A7_T4.js b/test/suite/ch13/13.2/S13.2.1_A7_T4.js index 7461324ed..13632f0f3 100644 --- a/test/suite/ch13/13.2/S13.2.1_A7_T4.js +++ b/test/suite/ch13/13.2/S13.2.1_A7_T4.js @@ -1,14 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is returned then Result.value is returned too - * - * @path ch13/13.2/S13.2.1_A7_T4.js - * @description Returning boolean. Declaring a function with "function __func()" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is returned then Result.value is returned too +description: Returning boolean. Declaring a function with "function __func()" +includes: [Test262Error.js] +---*/ function __func(){ var x = true; @@ -19,8 +19,8 @@ function __func(){ //CHECK# try { x=x; - $ERROR('#0: "x=x" lead to throwing exception');
-} catch (e) {
+ $ERROR('#0: "x=x" lead to throwing exception'); +} catch (e) { if (e instanceof Test262Error) throw e; } // @@ -48,11 +48,9 @@ if (!(__x)) { //CHECK#3 try { x=x; - $ERROR('#3: "x=x" lead to throwing exception');
-} catch (e) {
+ $ERROR('#3: "x=x" lead to throwing exception'); +} catch (e) { if (e instanceof Test262Error) throw e; } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.1_A8_T1.js b/test/suite/ch13/13.2/S13.2.1_A8_T1.js index 2be9cb728..a6fb01b32 100644 --- a/test/suite/ch13/13.2/S13.2.1_A8_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A8_T1.js @@ -1,14 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is thrown then Result.value is thrown too - * - * @path ch13/13.2/S13.2.1_A8_T1.js - * @description Throwing an exception within a function body. Declaring function with "function __func()" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is thrown then Result.value is thrown too +description: > + Throwing an exception within a function body. Declaring function + with "function __func()" +---*/ function __func(){ var x = 1; @@ -24,4 +25,3 @@ try{ $ERROR('#1: Exception === "Catch Me If You Can". Actual: exception ==='+e); } } - diff --git a/test/suite/ch13/13.2/S13.2.1_A8_T2.js b/test/suite/ch13/13.2/S13.2.1_A8_T2.js index c07582b28..831e678dc 100644 --- a/test/suite/ch13/13.2/S13.2.1_A8_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A8_T2.js @@ -1,14 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object F is called, the following steps are taken: - * 2. Evaluate F's FunctionBody; - * if Result.type is thrown then Result.value is thrown too - * - * @path ch13/13.2/S13.2.1_A8_T2.js - * @description Throwing an exception within a function body. Declaring function with "var __func = function (message)" - */ +/*--- +info: > + When the [[Call]] property for a Function object F is called, the following steps are taken: + 2. Evaluate F's FunctionBody; + if Result.type is thrown then Result.value is thrown too +description: > + Throwing an exception within a function body. Declaring function + with "var __func = function (message)" +---*/ var CATCH_ME_IF_YOU_CAN = true; @@ -26,4 +27,3 @@ try{ $ERROR('#1: Exception === true. Actual: exception ==='+e); } } - diff --git a/test/suite/ch13/13.2/S13.2.1_A9.1_T1.js b/test/suite/ch13/13.2/S13.2.1_A9.1_T1.js index 9b1dd7382..11b0f0c45 100644 --- a/test/suite/ch13/13.2/S13.2.1_A9.1_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A9.1_T1.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object is called, - * the body is evaluated and if evaluation result has type "normal", then "undefined" is returned - * - * @path ch13/13.2/S13.2.1_A9.1_T1.js - * @description Declaring a function with "function __func()" and no "return" in the function body - */ +/*--- +info: > + When the [[Call]] property for a Function object is called, + the body is evaluated and if evaluation result has type "normal", then "undefined" is returned +description: > + Declaring a function with "function __func()" and no "return" in + the function body +---*/ var x; @@ -30,4 +31,3 @@ if (!x) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A9.1_T2.js b/test/suite/ch13/13.2/S13.2.1_A9.1_T2.js index 90057b04b..25cfbd5f0 100644 --- a/test/suite/ch13/13.2/S13.2.1_A9.1_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A9.1_T2.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object is called, - * the body is evaluated and if evaluation result has type "normal", then "undefined" is returned - * - * @path ch13/13.2/S13.2.1_A9.1_T2.js - * @description Declaring a function with "var __func = function()" and no "return" in the function body - */ +/*--- +info: > + When the [[Call]] property for a Function object is called, + the body is evaluated and if evaluation result has type "normal", then "undefined" is returned +description: > + Declaring a function with "var __func = function()" and no + "return" in the function body +---*/ var x; @@ -30,4 +31,3 @@ if (!x) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A9_T1.js b/test/suite/ch13/13.2/S13.2.1_A9_T1.js index 6332ef34e..1cecf4992 100644 --- a/test/suite/ch13/13.2/S13.2.1_A9_T1.js +++ b/test/suite/ch13/13.2/S13.2.1_A9_T1.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object is called, - * the body is evaluated and if evaluation result has type "return" its value is not defined, then "undefined" is returned - * - * @path ch13/13.2/S13.2.1_A9_T1.js - * @description Using "return" with no expression. Declaring a function with "function __func()" - */ +/*--- +info: > + When the [[Call]] property for a Function object is called, + the body is evaluated and if evaluation result has type "return" its value is not defined, then "undefined" is returned +description: > + Using "return" with no expression. Declaring a function with + "function __func()" +---*/ var x; @@ -31,4 +32,3 @@ if (x!==1) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.1_A9_T2.js b/test/suite/ch13/13.2/S13.2.1_A9_T2.js index 75be8a19a..f40a79dd6 100644 --- a/test/suite/ch13/13.2/S13.2.1_A9_T2.js +++ b/test/suite/ch13/13.2/S13.2.1_A9_T2.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Call]] property for a Function object is called, - * the body is evaluated and if evaluation result has type "return" its value is not defined, then "undefined" is returned - * - * @path ch13/13.2/S13.2.1_A9_T2.js - * @description Using "return" with no expression. Declaring a function with "var __func = function()" - */ +/*--- +info: > + When the [[Call]] property for a Function object is called, + the body is evaluated and if evaluation result has type "return" its value is not defined, then "undefined" is returned +description: > + Using "return" with no expression. Declaring a function with "var + __func = function()" +---*/ var x; @@ -31,4 +32,3 @@ if (x!==1) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A10.js b/test/suite/ch13/13.2/S13.2.2_A10.js index 25ba9d58d..a4ea620d3 100644 --- a/test/suite/ch13/13.2/S13.2.2_A10.js +++ b/test/suite/ch13/13.2/S13.2.2_A10.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is possible as long as this.any_Function is declared - * - * @path ch13/13.2/S13.2.2_A10.js - * @description Calling a function as a constructor after it has been declared - */ +/*--- +info: > + Calling a function as a constructor is possible as long as + this.any_Function is declared +description: Calling a function as a constructor after it has been declared +---*/ function FACTORY(){ this.id = 0; @@ -35,4 +35,3 @@ if (obj.id !== 5) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A11.js b/test/suite/ch13/13.2/S13.2.2_A11.js index 13f7f4e9b..d4c3d2b1d 100644 --- a/test/suite/ch13/13.2/S13.2.2_A11.js +++ b/test/suite/ch13/13.2/S13.2.2_A11.js @@ -1,12 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is possible as long as this.any_Function is declared and called - * - * @path ch13/13.2/S13.2.2_A11.js - * @description Calling a function as a constructor after it has been declared with "function func()" - */ +/*--- +info: > + Calling a function as a constructor is possible as long as + this.any_Function is declared and called +description: > + Calling a function as a constructor after it has been declared + with "function func()" +includes: [Test262Error.js] +---*/ function FACTORY(){ this.id = 0; @@ -22,11 +25,9 @@ function FACTORY(){ //CHECK#1 try { var obj = new FACTORY(); - $ERROR('#1: var obj = new FACTORY() lead to throwing exception');
-} catch (e) {
+ $ERROR('#1: var obj = new FACTORY() lead to throwing exception'); +} catch (e) { if (e instanceof Test262Error) throw e; } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.2_A12.js b/test/suite/ch13/13.2/S13.2.2_A12.js index 52d4a95b6..d5570a200 100644 --- a/test/suite/ch13/13.2/S13.2.2_A12.js +++ b/test/suite/ch13/13.2/S13.2.2_A12.js @@ -1,12 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is possible as long as this.any_Function is declared and called - * - * @path ch13/13.2/S13.2.2_A12.js - * @description Calling a function as a constructor after it has been declared with "function func()" - */ +/*--- +info: > + Calling a function as a constructor is possible as long as + this.any_Function is declared and called +description: > + Calling a function as a constructor after it has been declared + with "function func()" +---*/ function FACTORY(){ this.id = 0; @@ -35,4 +37,3 @@ if (obj.id !== "id_string") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A13.js b/test/suite/ch13/13.2/S13.2.2_A13.js index 79801ac9e..18919e13e 100644 --- a/test/suite/ch13/13.2/S13.2.2_A13.js +++ b/test/suite/ch13/13.2/S13.2.2_A13.js @@ -1,12 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is inadmissible as long as this.any_Function is declared by eval and called - * - * @path ch13/13.2/S13.2.2_A13.js - * @description Calling a function as a constructor after it has been declared by eval - */ +/*--- +info: > + Calling a function as a constructor is inadmissible as long as + this.any_Function is declared by eval and called +description: > + Calling a function as a constructor after it has been declared by + eval +includes: [Test262Error.js] +---*/ function FACTORY(){ this.id = 0; @@ -20,10 +23,9 @@ function FACTORY(){ //CHECK#1 try { var obj = new FACTORY(); - $ERROR('#1: var obj = new FACTORY() lead to throwing exception');
-} catch (e) {
+ $ERROR('#1: var obj = new FACTORY() lead to throwing exception'); +} catch (e) { if (e instanceof Test262Error) throw e; } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A14.js b/test/suite/ch13/13.2/S13.2.2_A14.js index 2db1005bc..6b233d56d 100644 --- a/test/suite/ch13/13.2/S13.2.2_A14.js +++ b/test/suite/ch13/13.2/S13.2.2_A14.js @@ -1,13 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is inadmissible as long as this.any_Function is declared by eval and called - * - * @path ch13/13.2/S13.2.2_A14.js - * @description Calling a function as a constructor after it has been declared by eval - * @noStrict - */ +/*--- +info: > + Calling a function as a constructor is inadmissible as long as + this.any_Function is declared by eval and called +description: > + Calling a function as a constructor after it has been declared by + eval +flags: [noStrict] +---*/ function FACTORY(){ this.id = 0; @@ -26,4 +28,3 @@ try { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A15_T1.js b/test/suite/ch13/13.2/S13.2.2_A15_T1.js index 6548618eb..958dd93e3 100644 --- a/test/suite/ch13/13.2/S13.2.2_A15_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A15_T1.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called, - * and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy - * - * @path ch13/13.2/S13.2.2_A15_T1.js - * @description Function declared at the end of the program and "obj" property is declared with "var obj = {}" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called, + and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy +description: > + Function declared at the end of the program and "obj" property is + declared with "var obj = {}" +---*/ var __obj = new __FACTORY(); @@ -42,4 +43,3 @@ function __FACTORY(){ obj.slot = this; return obj; } - diff --git a/test/suite/ch13/13.2/S13.2.2_A15_T2.js b/test/suite/ch13/13.2/S13.2.2_A15_T2.js index 007474b4b..9c9cc7765 100644 --- a/test/suite/ch13/13.2/S13.2.2_A15_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A15_T2.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called, - * and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy - * - * @path ch13/13.2/S13.2.2_A15_T2.js - * @description Function declared at the end of the program and "obj" property is declared with "obj = {}" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called, + and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy +description: > + Function declared at the end of the program and "obj" property is + declared with "obj = {}" +---*/ var __obj = new __FACTORY(); @@ -42,4 +43,3 @@ function __FACTORY(){ obj.slot = this; return obj; } - diff --git a/test/suite/ch13/13.2/S13.2.2_A15_T3.js b/test/suite/ch13/13.2/S13.2.2_A15_T3.js index c448df552..a4ada72b1 100644 --- a/test/suite/ch13/13.2/S13.2.2_A15_T3.js +++ b/test/suite/ch13/13.2/S13.2.2_A15_T3.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called, - * and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy - * - * @path ch13/13.2/S13.2.2_A15_T3.js - * @description Function declared at the end of the program and "obj" property is declared with "var obj = {}" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called, + and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy +description: > + Function declared at the end of the program and "obj" property is + declared with "var obj = {}" +---*/ __FACTORY = function (){ this.prop = 1; @@ -42,4 +43,3 @@ if (__obj.slot.prop !==1) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A15_T4.js b/test/suite/ch13/13.2/S13.2.2_A15_T4.js index 5667b9b52..9267fff05 100644 --- a/test/suite/ch13/13.2/S13.2.2_A15_T4.js +++ b/test/suite/ch13/13.2/S13.2.2_A15_T4.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called, - * and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy - * - * @path ch13/13.2/S13.2.2_A15_T4.js - * @description Function declared at the end of the program and "obj" property is declared with "obj = {}" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called, + and the object created in the function is returned, the object (declared with "this" within a function) will be strong and healthy +description: > + Function declared at the end of the program and "obj" property is + declared with "obj = {}" +---*/ __FACTORY = function(){ this.prop = 1; @@ -42,5 +43,3 @@ if (__obj.slot.prop !==1) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.2_A16_T1.js b/test/suite/ch13/13.2/S13.2.2_A16_T1.js index ea40cfb09..c6c8ffef3 100644 --- a/test/suite/ch13/13.2/S13.2.2_A16_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A16_T1.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * FunctionExpression within a new statement is admitted - * - * @path ch13/13.2/S13.2.2_A16_T1.js - * @description Using "is __obj = new function __func(){this.prop=1;}" as FunctionExpression - */ +/*--- +info: FunctionExpression within a new statement is admitted +description: > + Using "is __obj = new function __func(){this.prop=1;}" as + FunctionExpression +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -33,4 +33,3 @@ if (typeof __func !== "undefined") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A16_T2.js b/test/suite/ch13/13.2/S13.2.2_A16_T2.js index 2af36ba44..1716a1d4d 100644 --- a/test/suite/ch13/13.2/S13.2.2_A16_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A16_T2.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * FunctionExpression within a new statement is admitted - * - * @path ch13/13.2/S13.2.2_A16_T2.js - * @description Using "var __obj = new function __func(arg){this.prop=arg;}(5)" as FunctionExpression - */ +/*--- +info: FunctionExpression within a new statement is admitted +description: > + Using "var __obj = new function __func(arg){this.prop=arg;}(5)" as + FunctionExpression +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -33,4 +33,3 @@ if (typeof __func !== "undefined") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A16_T3.js b/test/suite/ch13/13.2/S13.2.2_A16_T3.js index 8cff917f6..25c585bdb 100644 --- a/test/suite/ch13/13.2/S13.2.2_A16_T3.js +++ b/test/suite/ch13/13.2/S13.2.2_A16_T3.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * FunctionExpression within a new statement is admitted - * - * @path ch13/13.2/S13.2.2_A16_T3.js - * @description Using "is __obj = new function __func(arg){this.prop=arg; return {feat: ++arg}}(5)" as FunctionExpression - */ +/*--- +info: FunctionExpression within a new statement is admitted +description: > + Using "is __obj = new function __func(arg){this.prop=arg; return + {feat: ++arg}}(5)" as FunctionExpression +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#1 @@ -41,4 +41,3 @@ if (typeof __func !== "undefined") { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A17_T2.js b/test/suite/ch13/13.2/S13.2.2_A17_T2.js index 105b762d7..a85e83daa 100644 --- a/test/suite/ch13/13.2/S13.2.2_A17_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A17_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. -/** - * FunctionExpression containing "with" statement is admitted - * - * @path ch13/13.2/S13.2.2_A17_T2.js - * @description Throwing an exception within "with" statement - */ +/*--- +info: FunctionExpression containing "with" statement is admitted +description: Throwing an exception within "with" statement +---*/ this.p1="alert"; @@ -68,5 +66,3 @@ if (resukt !== "alert") { ////////////////////////////////////////////////////////////////////////////// var resukt; - - diff --git a/test/suite/ch13/13.2/S13.2.2_A17_T3.js b/test/suite/ch13/13.2/S13.2.2_A17_T3.js index 8d8eba5bd..b678fc4f0 100644 --- a/test/suite/ch13/13.2/S13.2.2_A17_T3.js +++ b/test/suite/ch13/13.2/S13.2.2_A17_T3.js @@ -1,13 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * FunctionExpression containing "with" statement is admitted - * - * @path ch13/13.2/S13.2.2_A17_T3.js - * @description In the check 4 we populate field getRight in __obj object since var getRight declaration adds variable to function scope - * but getRight in statement resolves within with(__obj) scope and searchs getRight in __obj first - */ +/*--- +info: FunctionExpression containing "with" statement is admitted +description: > + In the check 4 we populate field getRight in __obj object since + var getRight declaration adds variable to function scope but + getRight in statement resolves within with(__obj) scope and + searchs getRight in __obj first +---*/ p1="alert"; @@ -64,5 +65,3 @@ if (resukt !== "w1") { ////////////////////////////////////////////////////////////////////////////// var resukt; - - diff --git a/test/suite/ch13/13.2/S13.2.2_A18_T1.js b/test/suite/ch13/13.2/S13.2.2_A18_T1.js index 327f816dd..f50c93178 100644 --- a/test/suite/ch13/13.2/S13.2.2_A18_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A18_T1.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Using arguments object within a "with" Expression that is nested in a function is admitted - * - * @path ch13/13.2/S13.2.2_A18_T1.js - * @description Object is declared with "var __obj={callee:"a"}" - */ +/*--- +info: > + Using arguments object within a "with" Expression that is nested in a + function is admitted +description: "Object is declared with \"var __obj={callee:\"a\"}\"" +---*/ var callee=0, b; @@ -51,4 +51,3 @@ if (!(this.b)) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A18_T2.js b/test/suite/ch13/13.2/S13.2.2_A18_T2.js index d586ca5f9..f60a03b2d 100644 --- a/test/suite/ch13/13.2/S13.2.2_A18_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A18_T2.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Using arguments object within a "with" Expression that is nested in a function is admitted - * - * @path ch13/13.2/S13.2.2_A18_T2.js - * @description Object is declared with "__obj={callee:"a"}" - */ +/*--- +info: > + Using arguments object within a "with" Expression that is nested in a + function is admitted +description: "Object is declared with \"__obj={callee:\"a\"}\"" +---*/ this.callee = 0; var b; @@ -54,4 +54,3 @@ if (!(this.b)) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T1.js b/test/suite/ch13/13.2/S13.2.2_A19_T1.js index 5fdcaee5a..662ba891c 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_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. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T1.js - * @description Function is declared in the global scope - */ +/*--- +info: Function's scope chain is started when it is declared +description: Function is declared in the global scope +---*/ var a = 1; @@ -26,4 +24,3 @@ if (result !== 1) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T2.js b/test/suite/ch13/13.2/S13.2.2_A19_T2.js index b36f457b8..41898209b 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_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. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T2.js - * @description Function is declared in the object scope. Using "with" statement - */ +/*--- +info: Function's scope chain is started when it is declared +description: Function is declared in the object scope. Using "with" statement +---*/ var a = 1; @@ -24,4 +22,3 @@ if (result !== 2) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T3.js b/test/suite/ch13/13.2/S13.2.2_A19_T3.js index 3f6e11266..10eaf76ad 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T3.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T3.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T3.js - * @description Function is declared in the object scope and then an exception is thrown - */ +/*--- +info: Function's scope chain is started when it is declared +description: > + Function is declared in the object scope and then an exception is + thrown +---*/ var a = 1; @@ -31,7 +31,3 @@ if (result !== 2) { } // ////////////////////////////////////////////////////////////////////////////// - - - - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T4.js b/test/suite/ch13/13.2/S13.2.2_A19_T4.js index 65f6e765a..eaec3ad4f 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T4.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T4.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T4.js - * @description Function is declared in the hierarchical object scope and then an exception is thrown - */ +/*--- +info: Function's scope chain is started when it is declared +description: > + Function is declared in the hierarchical object scope and then an + exception is thrown +---*/ var a = 1; @@ -33,7 +33,3 @@ if (result !== 3) { } // ////////////////////////////////////////////////////////////////////////////// - - - - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T5.js b/test/suite/ch13/13.2/S13.2.2_A19_T5.js index f0614e175..db670c3c9 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T5.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T5.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T5.js - * @description Function is declared in the object scope, then an exception is thrown and the object is deleted - */ +/*--- +info: Function's scope chain is started when it is declared +description: > + Function is declared in the object scope, then an exception is + thrown and the object is deleted +---*/ var a = 1; @@ -37,4 +37,3 @@ if (result !== 2) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T6.js b/test/suite/ch13/13.2/S13.2.2_A19_T6.js index b9fafb1f5..9c83b8a93 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T6.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T6.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T6.js - * @description Function is declared in the "object->do-while" scope, then the object is deleted and another object with the same name is declared - */ +/*--- +info: Function's scope chain is started when it is declared +description: > + Function is declared in the "object->do-while" scope, then the + object is deleted and another object with the same name is declared +---*/ var a = 1; @@ -38,9 +38,3 @@ if (result !== 2) { } // ////////////////////////////////////////////////////////////////////////////// - - - - - - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T7.js b/test/suite/ch13/13.2/S13.2.2_A19_T7.js index c83232d66..b4901d7e1 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T7.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T7.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. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T7.js - * @description Function is declared in the object scope as a variable - */ +/*--- +info: Function's scope chain is started when it is declared +description: Function is declared in the object scope as a variable +---*/ var a = 1; @@ -51,4 +49,3 @@ if (this.__func === undefined) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A19_T8.js b/test/suite/ch13/13.2/S13.2.2_A19_T8.js index 7db4affd8..dc98121bc 100644 --- a/test/suite/ch13/13.2/S13.2.2_A19_T8.js +++ b/test/suite/ch13/13.2/S13.2.2_A19_T8.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. -/** - * Function's scope chain is started when it is declared - * - * @path ch13/13.2/S13.2.2_A19_T8.js - * @description Function is declared multiply times - */ +/*--- +info: Function's scope chain is started when it is declared +description: Function is declared multiply times +---*/ ////////////////////////////////////////////////////////////////////////////// //CHECK#0 @@ -71,4 +69,3 @@ with ({a:99,b:"c"}) // ////////////////////////////////////////////////////////////////////////////// } - diff --git a/test/suite/ch13/13.2/S13.2.2_A1_T1.js b/test/suite/ch13/13.2/S13.2.2_A1_T1.js index cb9a2dbd6..1fefa0900 100644 --- a/test/suite/ch13/13.2/S13.2.2_A1_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A1_T1.js @@ -1,12 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Since a function is an object, it might be set to [[Prototype]] property of a new created object through [[Construct]] property - * - * @path ch13/13.2/S13.2.2_A1_T1.js - * @description Declaring a function with "function __func()" - */ +/*--- +info: > + Since a function is an object, it might be set to [[Prototype]] property + of a new created object through [[Construct]] property +description: Declaring a function with "function __func()" +---*/ var __MONSTER="monster"; var __PREDATOR="predator"; @@ -41,4 +41,3 @@ if (__monster.type !==__MONSTER) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A1_T2.js b/test/suite/ch13/13.2/S13.2.2_A1_T2.js index dd907d790..ea9555646 100644 --- a/test/suite/ch13/13.2/S13.2.2_A1_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A1_T2.js @@ -1,12 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Since a function is an object, it might be set to [[Prototype]] property of a new created object through [[Construct]] property - * - * @path ch13/13.2/S13.2.2_A1_T2.js - * @description Declaring a function with "var __PROTO = function()" - */ +/*--- +info: > + Since a function is an object, it might be set to [[Prototype]] property + of a new created object through [[Construct]] property +description: Declaring a function with "var __PROTO = function()" +includes: [$FAIL.js] +---*/ var __MONSTER="monster"; var __PREDATOR="predator"; @@ -41,4 +42,3 @@ if (__monster.type !==__MONSTER) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A2.js b/test/suite/ch13/13.2/S13.2.2_A2.js index 3389a36d1..06d40bd13 100644 --- a/test/suite/ch13/13.2/S13.2.2_A2.js +++ b/test/suite/ch13/13.2/S13.2.2_A2.js @@ -1,13 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Since a function is an object, it might be set to [[Prototype]] property of a new created object through [[Construct]] property, - * but [[call]] property must fail with TypeError error - * - * @path ch13/13.2/S13.2.2_A2.js - * @description Trying to [[call]] this function - */ +/*--- +info: > + Since a function is an object, it might be set to [[Prototype]] property of a new created object through [[Construct]] property, + but [[call]] property must fail with TypeError error +description: Trying to [[call]] this function +---*/ var __PLANT="flower"; var __ROSE="rose"; @@ -39,4 +38,3 @@ try{ } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A3_T1.js b/test/suite/ch13/13.2/S13.2.2_A3_T1.js index a04721c81..0bb9923d9 100644 --- a/test/suite/ch13/13.2/S13.2.2_A3_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A3_T1.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * It gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). - * If PROTO_VAL is not an object, sets the [[Prototype]] property of native ECMAScript object just created - * to the original Object prototype object as described in 15.2.3.1 - * - * @path ch13/13.2/S13.2.2_A3_T1.js - * @description Declaring a function with "function __FACTORY()" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + It gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). + If PROTO_VAL is not an object, sets the [[Prototype]] property of native ECMAScript object just created + to the original Object prototype object as described in 15.2.3.1 +description: Declaring a function with "function __FACTORY()" +---*/ function __FACTORY(){}; __FACTORY.prototype=1; @@ -32,4 +31,3 @@ if (!(Object.prototype.isPrototypeOf(__device))) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A3_T2.js b/test/suite/ch13/13.2/S13.2.2_A3_T2.js index 613adbb9c..609135ad8 100644 --- a/test/suite/ch13/13.2/S13.2.2_A3_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A3_T2.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * It gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). - * If PROTO_VAL is not an object, sets the [[Prototype]] property of native ECMAScript object just created - * to the original Object prototype object as described in 15.2.3.1 - * - * @path ch13/13.2/S13.2.2_A3_T2.js - * @description Declaring a function with "var __FACTORY = function()" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + It gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). + If PROTO_VAL is not an object, sets the [[Prototype]] property of native ECMAScript object just created + to the original Object prototype object as described in 15.2.3.1 +description: Declaring a function with "var __FACTORY = function()" +---*/ var __FACTORY = function(){}; __FACTORY.prototype=1; @@ -32,4 +31,3 @@ if (!(Object.prototype.isPrototypeOf(__device))) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A4_T1.js b/test/suite/ch13/13.2/S13.2.2_A4_T1.js index 5804b6c29..8824e825c 100644 --- a/test/suite/ch13/13.2/S13.2.2_A4_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A4_T1.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). - * If PROTO_VAL is an object, sets the [[Prototype]] property of native ECMAScript object just created - * to the PROTO_VAL - * - * @path ch13/13.2/S13.2.2_A4_T1.js - * @description Declaring a function with "function __FACTORY()" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). + If PROTO_VAL is an object, sets the [[Prototype]] property of native ECMAScript object just created + to the PROTO_VAL +description: Declaring a function with "function __FACTORY()" +---*/ var __CUBE="cube"; @@ -35,4 +34,3 @@ if (__device.printShape() !== __CUBE) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A4_T2.js b/test/suite/ch13/13.2/S13.2.2_A4_T2.js index 3560e058b..a130caf38 100644 --- a/test/suite/ch13/13.2/S13.2.2_A4_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A4_T2.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). - * If PROTO_VAL is an object, sets the [[Prototype]] property of native ECMAScript object just created - * to the PROTO_VAL - * - * @path ch13/13.2/S13.2.2_A4_T2.js - * @description Declaring a function with "__FACTORY = function()" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Gets the value of the [[Prototype]] property of the F(Denote it PROTO_VAL). + If PROTO_VAL is an object, sets the [[Prototype]] property of native ECMAScript object just created + to the PROTO_VAL +description: Declaring a function with "__FACTORY = function()" +---*/ __CUBE="cube"; @@ -35,4 +34,3 @@ if (__device.printShape() !== __CUBE) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A5_T1.js b/test/suite/ch13/13.2/S13.2.2_A5_T1.js index 03c552318..ac1a9757a 100644 --- a/test/suite/ch13/13.2/S13.2.2_A5_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A5_T1.js @@ -1,15 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing native ECMAScript object just created as the this value and - * providing the argument list passed into [[Construct]] as the argument values - * - * @path ch13/13.2/S13.2.2_A5_T1.js - * @description Declaring a function with "function __FACTORY(arg1, arg2)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing native ECMAScript object just created as the this value and + providing the argument list passed into [[Construct]] as the argument values +description: Declaring a function with "function __FACTORY(arg1, arg2)" +---*/ __VOLUME=8; __RED="red"; @@ -77,4 +76,3 @@ if (__device.bottom !== __BOTTOM) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A5_T2.js b/test/suite/ch13/13.2/S13.2.2_A5_T2.js index d3cd773ab..94f9475fd 100644 --- a/test/suite/ch13/13.2/S13.2.2_A5_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A5_T2.js @@ -1,15 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing native ECMAScript object just created as the this value and - * providing the argument list passed into [[Construct]] as the argument values - * - * @path ch13/13.2/S13.2.2_A5_T2.js - * @description Declaring a function with "__FACTORY = function(arg1, arg2)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing native ECMAScript object just created as the this value and + providing the argument list passed into [[Construct]] as the argument values +description: Declaring a function with "__FACTORY = function(arg1, arg2)" +---*/ __VOLUME=8; __RED="red"; @@ -77,4 +76,3 @@ if (__device.bottom !== __BOTTOM) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A6_T1.js b/test/suite/ch13/13.2/S13.2.2_A6_T1.js index 82ef96dce..6817c9c06 100644 --- a/test/suite/ch13/13.2/S13.2.2_A6_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A6_T1.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is not Object then return passed as this into [[Call]] object - * - * @path ch13/13.2/S13.2.2_A6_T1.js - * @description Declaring a function with "__func = function(arg)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is not Object then return passed as this into [[Call]] object +description: Declaring a function with "__func = function(arg)" +---*/ __FOO="fooValue"; __BAR="barValue"; @@ -38,4 +37,3 @@ if (__obj.bar!==undefined) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A6_T2.js b/test/suite/ch13/13.2/S13.2.2_A6_T2.js index f428bcb15..f4222ff90 100644 --- a/test/suite/ch13/13.2/S13.2.2_A6_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A6_T2.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is not Object then return passed as this into [[Call]] object - * - * @path ch13/13.2/S13.2.2_A6_T2.js - * @description Declaring a function with "function __func (arg)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is not Object then return passed as this into [[Call]] object +description: Declaring a function with "function __func (arg)" +---*/ var __FOO="fooValue"; var __BAR="barValue"; @@ -38,4 +37,3 @@ if (__obj.bar!==undefined) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A7_T1.js b/test/suite/ch13/13.2/S13.2.2_A7_T1.js index 02734e83e..7594e3754 100644 --- a/test/suite/ch13/13.2/S13.2.2_A7_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A7_T1.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is an Object then return this just as obtained object - * - * @path ch13/13.2/S13.2.2_A7_T1.js - * @description Declaring a function with "as __func = function(arg)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is an Object then return this just as obtained object +description: Declaring a function with "as __func = function(arg)" +---*/ var __FRST="one"; var __SCND="two"; @@ -39,4 +38,3 @@ if (__obj__.second !== __SCND) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A7_T2.js b/test/suite/ch13/13.2/S13.2.2_A7_T2.js index 9fbebf72c..e453b725c 100644 --- a/test/suite/ch13/13.2/S13.2.2_A7_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A7_T2.js @@ -1,16 +1,15 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is an Object then return this just as obtained object - * - * @path ch13/13.2/S13.2.2_A7_T2.js - * @description Declaring a "function as function __func (arg)" - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is an Object then return this just as obtained object +description: Declaring a "function as function __func (arg)" +---*/ __FRST="one"; __SCND="two"; @@ -39,4 +38,3 @@ if (__obj__.second !== __SCND) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.2_A8_T1.js b/test/suite/ch13/13.2/S13.2.2_A8_T1.js index 640c120f8..7ff876f70 100644 --- a/test/suite/ch13/13.2/S13.2.2_A8_T1.js +++ b/test/suite/ch13/13.2/S13.2.2_A8_T1.js @@ -1,16 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is an Function then return this just as obtained function - * - * @path ch13/13.2/S13.2.2_A8_T1.js - * @description Creating a function whose prototype contains "return" followed by declaration of another function - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is an Function then return this just as obtained function +description: > + Creating a function whose prototype contains "return" followed by + declaration of another function +---*/ var __FRST="one"; var __SCND="two"; @@ -50,5 +51,3 @@ if (__instance(1)!== 2) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.2_A8_T2.js b/test/suite/ch13/13.2/S13.2.2_A8_T2.js index e7f454b8d..e0be6ad6d 100644 --- a/test/suite/ch13/13.2/S13.2.2_A8_T2.js +++ b/test/suite/ch13/13.2/S13.2.2_A8_T2.js @@ -1,16 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is an Function then return this just as obtained function - * - * @path ch13/13.2/S13.2.2_A8_T2.js - * @description Creating a function whose prototype contains declaration of another function declared as a variable - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is an Function then return this just as obtained function +description: > + Creating a function whose prototype contains declaration of + another function declared as a variable +---*/ var __FRST="one"; var __SCND="two"; @@ -48,5 +49,3 @@ if (__instance("SAM")!== "SAMBA") { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.2_A8_T3.js b/test/suite/ch13/13.2/S13.2.2_A8_T3.js index e5e05f4bd..43c1569ae 100644 --- a/test/suite/ch13/13.2/S13.2.2_A8_T3.js +++ b/test/suite/ch13/13.2/S13.2.2_A8_T3.js @@ -1,16 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When the [[Construct]] property for a Function object F is called: - * A new native ECMAScript object is created. - * Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument - * list passed into [[Construct]] as the argument values. - * If Type( [[Call]] returned) is an Function then return this just as obtained function - * - * @path ch13/13.2/S13.2.2_A8_T3.js - * @description Creating a function whose prototype contains declaration of another function defined by using Function.call method - */ +/*--- +info: > + When the [[Construct]] property for a Function object F is called: + A new native ECMAScript object is created. + Invoke the [[Call]] property of F, providing just created native ECMAScript object as the this value and providing the argument + list passed into [[Construct]] as the argument values. + If Type( [[Call]] returned) is an Function then return this just as obtained function +description: > + Creating a function whose prototype contains declaration of + another function defined by using Function.call method +---*/ var __FRST="one"; var __SCND="two"; @@ -48,5 +49,3 @@ if (__instance(1)!== 2) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2.2_A9.js b/test/suite/ch13/13.2/S13.2.2_A9.js index 4e178109c..17950fd32 100644 --- a/test/suite/ch13/13.2/S13.2.2_A9.js +++ b/test/suite/ch13/13.2/S13.2.2_A9.js @@ -1,12 +1,13 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * Calling a function as a constructor is inadmissible as long as this.any_Function is called before it is declared - * - * @path ch13/13.2/S13.2.2_A9.js - * @description Calling a function as a constructor - */ +/*--- +info: > + Calling a function as a constructor is inadmissible as long as + this.any_Function is called before it is declared +description: Calling a function as a constructor +includes: [Test262Error.js] +---*/ function FACTORY(){ this.id = 0; @@ -22,10 +23,9 @@ function FACTORY(){ //CHECK#1 try { var obj = new FACTORY(); - $ERROR('#1: var obj = new FACTORY() lead to throwing exception');
-} catch (e) {
+ $ERROR('#1: var obj = new FACTORY() lead to throwing exception'); +} catch (e) { if (e instanceof Test262Error) throw e; } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2.3_A1.js b/test/suite/ch13/13.2/S13.2.3_A1.js index bc6d70b90..9720f44d0 100644 --- a/test/suite/ch13/13.2/S13.2.3_A1.js +++ b/test/suite/ch13/13.2/S13.2.3_A1.js @@ -1,12 +1,12 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2.3_A1.js - * @description check that all poisoning use the [[ThrowTypeError]] - * function object. - * @onlyStrict - */ +/*--- +description: > + check that all poisoning use the [[ThrowTypeError]] function + object. +flags: [onlyStrict] +---*/ "use strict"; var poison = Object.getOwnPropertyDescriptor(function() {}, 'caller').get; @@ -46,4 +46,3 @@ checkPoison((function() { return arguments; })(), 'caller'); checkPoison((function() { return arguments; })(), 'callee'); checkPoison((function() {}).bind(null), 'caller'); checkPoison((function() {}).bind(null), 'arguments'); - diff --git a/test/suite/ch13/13.2/S13.2_A1_T1.js b/test/suite/ch13/13.2/S13.2_A1_T1.js index 5f7d1b15a..2de2d0e27 100644 --- a/test/suite/ch13/13.2/S13.2_A1_T1.js +++ b/test/suite/ch13/13.2/S13.2_A1_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. -/** - * A "prototype" property is automatically created for every function - * - * @path ch13/13.2/S13.2_A1_T1.js - * @description Using "function __func(){}" as a FunctionDeclaration - */ +/*--- +info: A "prototype" property is automatically created for every function +description: Using "function __func(){}" as a FunctionDeclaration +---*/ function __func(){}; @@ -17,4 +15,3 @@ if (__func.prototype === undefined) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2_A1_T2.js b/test/suite/ch13/13.2/S13.2_A1_T2.js index b9d933a6d..afe08f124 100644 --- a/test/suite/ch13/13.2/S13.2_A1_T2.js +++ b/test/suite/ch13/13.2/S13.2_A1_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. -/** - * A "prototype" property is automatically created for every function - * - * @path ch13/13.2/S13.2_A1_T2.js - * @description Using "var __func = function(){}" as a FunctionDeclaration - */ +/*--- +info: A "prototype" property is automatically created for every function +description: Using "var __func = function(){}" as a FunctionDeclaration +---*/ var __func = function(){}; @@ -17,4 +15,3 @@ if (__func.prototype === undefined) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2_A2_T1.js b/test/suite/ch13/13.2/S13.2_A2_T1.js index b49ba1973..e72e5bce5 100644 --- a/test/suite/ch13/13.2/S13.2_A2_T1.js +++ b/test/suite/ch13/13.2/S13.2_A2_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. -/** - * Nested function are admitted - * - * @path ch13/13.2/S13.2_A2_T1.js - * @description Nesting level is two - */ +/*--- +info: Nested function are admitted +description: Nesting level is two +---*/ var __JEDI="jedi"; @@ -25,4 +23,3 @@ if (__FUNC()(__JEDI) !== __JEDI) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2_A2_T2.js b/test/suite/ch13/13.2/S13.2_A2_T2.js index 024a624fa..d3c414349 100644 --- a/test/suite/ch13/13.2/S13.2_A2_T2.js +++ b/test/suite/ch13/13.2/S13.2_A2_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. -/** - * Nested function are admitted - * - * @path ch13/13.2/S13.2_A2_T2.js - * @description Nesting level is three - */ +/*--- +info: Nested function are admitted +description: Nesting level is three +---*/ var __ROBOT="C3PO"; @@ -27,4 +25,3 @@ if (__FUNC()()(__ROBOT) !== __ROBOT) { } // ////////////////////////////////////////////////////////////////////////////// - diff --git a/test/suite/ch13/13.2/S13.2_A3.js b/test/suite/ch13/13.2/S13.2_A3.js index 3cd3c7032..3ba2be772 100644 --- a/test/suite/ch13/13.2/S13.2_A3.js +++ b/test/suite/ch13/13.2/S13.2_A3.js @@ -1,12 +1,14 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When Function object(F) is constructed the length property of F is set to the number of formal properties specified in FormalParameterList - * - * @path ch13/13.2/S13.2_A3.js - * @description Creating functions with various FormalParameterList and checking their lengths - */ +/*--- +info: > + When Function object(F) is constructed the length property of F is set to + the number of formal properties specified in FormalParameterList +description: > + Creating functions with various FormalParameterList and checking + their lengths +---*/ function __func(){}; @@ -27,5 +29,3 @@ if (__gunc.length !== 3) { } // ////////////////////////////////////////////////////////////////////////////// - - diff --git a/test/suite/ch13/13.2/S13.2_A4_T1.js b/test/suite/ch13/13.2/S13.2_A4_T1.js index ef47b61a0..2368e418c 100644 --- a/test/suite/ch13/13.2/S13.2_A4_T1.js +++ b/test/suite/ch13/13.2/S13.2_A4_T1.js @@ -1,16 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When Function object(F) is constructed the following steps from 9 to 11 take place - * 9.Create a new object as would be constructed by the expression new Object(). - * 10. Set the constructor property of Result(9) to F. This property is given attributes { DontEnum }. - * 11. Set the "prototype" property of F to Result(9). - * - * @path ch13/13.2/S13.2_A4_T1.js - * @description Checking prototype, prototype.constructor properties and {DontEnum} property of a constructor. - * Using "function __func(){}" as a FunctionDeclaration - */ +/*--- +info: > + When Function object(F) is constructed the following steps from 9 to 11 take place + 9.Create a new object as would be constructed by the expression new Object(). + 10. Set the constructor property of Result(9) to F. This property is given attributes { DontEnum }. + 11. Set the "prototype" property of F to Result(9). +description: > + Checking prototype, prototype.constructor properties and + {DontEnum} property of a constructor. Using "function __func(){}" + as a FunctionDeclaration +---*/ function __func(){}; @@ -44,9 +45,3 @@ if (__constructor_was__enumed) { } // ////////////////////////////////////////////////////////////////////////////// - - - - - - diff --git a/test/suite/ch13/13.2/S13.2_A4_T2.js b/test/suite/ch13/13.2/S13.2_A4_T2.js index 2da55b763..f18ade750 100644 --- a/test/suite/ch13/13.2/S13.2_A4_T2.js +++ b/test/suite/ch13/13.2/S13.2_A4_T2.js @@ -1,16 +1,17 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When Function object(F) is constructed the following steps from 9 to 11 take place - * 9.Create a new object as would be constructed by the expression new Object(). - * 10. Set the constructor property of Result(9) to F. This property is given attributes { DontEnum }. - * 11. Set the "prototype" property of F to Result(9). - * - * @path ch13/13.2/S13.2_A4_T2.js - * @description Checking prototype, prototype.constructor properties and {DontEnum} property of a constructor. - * Using "var __gunc = function(){}" as a FunctionDeclaration - */ +/*--- +info: > + When Function object(F) is constructed the following steps from 9 to 11 take place + 9.Create a new object as would be constructed by the expression new Object(). + 10. Set the constructor property of Result(9) to F. This property is given attributes { DontEnum }. + 11. Set the "prototype" property of F to Result(9). +description: > + Checking prototype, prototype.constructor properties and + {DontEnum} property of a constructor. Using "var __gunc = + function(){}" as a FunctionDeclaration +---*/ var __gunc = function(){}; @@ -44,9 +45,3 @@ if (__constructor_was__enumed) { } // ////////////////////////////////////////////////////////////////////////////// - - - - - - diff --git a/test/suite/ch13/13.2/S13.2_A5.js b/test/suite/ch13/13.2/S13.2_A5.js index 6d88fad8e..988148352 100644 --- a/test/suite/ch13/13.2/S13.2_A5.js +++ b/test/suite/ch13/13.2/S13.2_A5.js @@ -1,13 +1,12 @@ // Copyright 2009 the Sputnik authors. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * When Function object(F) is constructed - * the [[Prototype]] property of F is set to the original Function prototype object as specified in 15.3.3.1 - * - * @path ch13/13.2/S13.2_A5.js - * @description Function.prototype.isPrototypeOf() is used - */ +/*--- +info: > + When Function object(F) is constructed + the [[Prototype]] property of F is set to the original Function prototype object as specified in 15.3.3.1 +description: Function.prototype.isPrototypeOf() is used +---*/ function __func(){}; @@ -29,6 +28,3 @@ if (!(Function.prototype.isPrototypeOf(__gunc))) { } // ////////////////////////////////////////////////////////////////////////////// - - - diff --git a/test/suite/ch13/13.2/S13.2_A6_T1.js b/test/suite/ch13/13.2/S13.2_A6_T1.js index 2fca01cc2..b1148301f 100644 --- a/test/suite/ch13/13.2/S13.2_A6_T1.js +++ b/test/suite/ch13/13.2/S13.2_A6_T1.js @@ -1,13 +1,10 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A6_T1.js - * @description check if "caller" poisoning poisons - * getOwnPropertyDescriptor too - * @onlyStrict - */ +/*--- +description: check if "caller" poisoning poisons getOwnPropertyDescriptor too +flags: [onlyStrict] +---*/ "use strict"; Object.getOwnPropertyDescriptor(function(){}, 'caller'); - diff --git a/test/suite/ch13/13.2/S13.2_A6_T2.js b/test/suite/ch13/13.2/S13.2_A6_T2.js index e8a334462..e7088fa93 100644 --- a/test/suite/ch13/13.2/S13.2_A6_T2.js +++ b/test/suite/ch13/13.2/S13.2_A6_T2.js @@ -1,13 +1,12 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A6_T2.js - * @description check if "arguments" poisoning poisons - * getOwnPropertyDescriptor too - * @onlyStrict - */ +/*--- +description: > + check if "arguments" poisoning poisons getOwnPropertyDescriptor + too +flags: [onlyStrict] +---*/ "use strict"; Object.getOwnPropertyDescriptor(function(){}, 'arguments'); - diff --git a/test/suite/ch13/13.2/S13.2_A7_T1.js b/test/suite/ch13/13.2/S13.2_A7_T1.js index d557bbd67..78198580b 100644 --- a/test/suite/ch13/13.2/S13.2_A7_T1.js +++ b/test/suite/ch13/13.2/S13.2_A7_T1.js @@ -1,14 +1,10 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A7_T1.js - * @description check if "caller" poisoning poisons - * hasOwnProperty too - * @onlyStrict - */ +/*--- +description: check if "caller" poisoning poisons hasOwnProperty too +flags: [onlyStrict] +---*/ "use strict"; (function(){}).hasOwnProperty('caller'); - - diff --git a/test/suite/ch13/13.2/S13.2_A7_T2.js b/test/suite/ch13/13.2/S13.2_A7_T2.js index 82c03938f..8c2212356 100644 --- a/test/suite/ch13/13.2/S13.2_A7_T2.js +++ b/test/suite/ch13/13.2/S13.2_A7_T2.js @@ -1,14 +1,10 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A7_T2.js - * @description check if "arguments" poisoning poisons - * hasOwnProperty too - * @onlyStrict - */ +/*--- +description: check if "arguments" poisoning poisons hasOwnProperty too +flags: [onlyStrict] +---*/ "use strict"; (function(){}).hasOwnProperty('arguments'); - - diff --git a/test/suite/ch13/13.2/S13.2_A8_T1.js b/test/suite/ch13/13.2/S13.2_A8_T1.js index a68553e82..9b5dcd4e2 100644 --- a/test/suite/ch13/13.2/S13.2_A8_T1.js +++ b/test/suite/ch13/13.2/S13.2_A8_T1.js @@ -1,14 +1,10 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A8_T1.js - * @description check if "caller" poisoning poisons - * "in" too - * @onlyStrict - */ +/*--- +description: check if "caller" poisoning poisons "in" too +flags: [onlyStrict] +---*/ "use strict"; 'caller' in function() {}; - - diff --git a/test/suite/ch13/13.2/S13.2_A8_T2.js b/test/suite/ch13/13.2/S13.2_A8_T2.js index 0d9eec7c5..58c7c58b1 100644 --- a/test/suite/ch13/13.2/S13.2_A8_T2.js +++ b/test/suite/ch13/13.2/S13.2_A8_T2.js @@ -1,14 +1,10 @@ // Copyright 2011 Google Inc. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. -/** - * @path ch13/13.2/S13.2_A8_T2.js - * @description check if "arguments" poisoning poisons - * "in" too - * @onlyStrict - */ +/*--- +description: check if "arguments" poisoning poisons "in" too +flags: [onlyStrict] +---*/ "use strict"; 'arguments' in function() {}; - - |