diff --git a/test/config/excludelist.xml b/test/config/excludelist.xml index 24b2299f45..1940aab824 100644 --- a/test/config/excludelist.xml +++ b/test/config/excludelist.xml @@ -87,13 +87,10 @@ https://bugs.ecmascript.org/show_bug.cgi?id=11 --> - https://bugs.ecmascript.org/show_bug.cgi?id=12 https://bugs.ecmascript.org/show_bug.cgi?id=13 https://bugs.ecmascript.org/show_bug.cgi?id=13 https://bugs.ecmascript.org/show_bug.cgi?id=14 https://bugs.ecmascript.org/show_bug.cgi?id=14 - https://bugs.ecmascript.org/show_bug.cgi?id=15 - https://bugs.ecmascript.org/show_bug.cgi?id=15 @@ -116,11 +113,6 @@ https://bugs.ecmascript.org/show_bug.cgi?id=30 - https://bugs.ecmascript.org/show_bug.cgi?id=58 - https://bugs.ecmascript.org/show_bug.cgi?id=58 - https://bugs.ecmascript.org/show_bug.cgi?id=58 - https://bugs.ecmascript.org/show_bug.cgi?id=58 - https://bugs.ecmascript.org/show_bug.cgi?id=61 https://bugs.ecmascript.org/show_bug.cgi?id=61 https://bugs.ecmascript.org/show_bug.cgi?id=61 @@ -131,8 +123,6 @@ https://bugs.ecmascript.org/show_bug.cgi?id=69 - https://bugs.ecmascript.org/show_bug.cgi?id=133 - https://bugs.ecmascript.org/show_bug.cgi?id=128 https://bugs.ecmascript.org/show_bug.cgi?id=127 https://bugs.ecmascript.org/show_bug.cgi?id=127 diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.15.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.15.js index 4fccdec7af..58d106b96b 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.15.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.15.js @@ -9,5 +9,6 @@ * @negative * @strict_only */ +"use strict"; var implements = 1; \ No newline at end of file diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.18.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.18.js index 9d64ba4caa..e2accf9f82 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.18.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.18.js @@ -8,6 +8,7 @@ * @description: Checking if execution of "interface = 1" fails in * strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.21.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.21.js index 12a5c43cd8..7cd0dc7e95 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.21.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.21.js @@ -7,6 +7,7 @@ * @assertion: The "package" token can not be used as identifier in strict code; * @description: Checking if execution of "package=1" fails in strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.22.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.22.js index 9990d6d34f..cdb72c3863 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.22.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.22.js @@ -7,6 +7,7 @@ * @assertion: The "private" token can not be used as identifier in strict code; * @description: Checking if execution of "private=1" fails in strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.23.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.23.js index 0c1cd16f07..3e22a26369 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.23.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.23.js @@ -8,6 +8,7 @@ * @description: Checking if execution of "protected=1" fails in * strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.24.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.24.js index 6eeaea3743..1941d67adb 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.24.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.24.js @@ -7,6 +7,7 @@ * @assertion: The "public" token can not be used as identifier in strict code; * @description: Checking if execution of "public=1" fails in strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.26.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.26.js index bdc6071109..321a964451 100644 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.26.js +++ b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.26.js @@ -7,6 +7,7 @@ * @assertion: The "static" token can not be used as identifier in strict code; * @description: Checking if execution of "static=1" fails in strict code; * @negative + * @onlyStrict */ "use strict"; diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T1.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T1.js deleted file mode 100644 index dc4314c150..0000000000 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T1.js +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** - * @name: S7.8.4_A6.4_T1; - * @section: 7.8.4; - * @assertion: HexEscapeSequence \X HexDigit HexDigit is incorrect; - * @description: Checking if execution of "\X01" passes; - * @negative -*/ - -//CHECK#1 -"\X01" diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T2.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T2.js deleted file mode 100644 index 676caf3140..0000000000 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A6.4_T2.js +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** - * @name: S7.8.4_A6.4_T2; - * @section: 7.8.4; - * @assertion: HexEscapeSequence \X HexDigit HexDigit is incorrect; - * @description: Checking if execution of "\X0A" passes; - * @negative -*/ - -//CHECK#1 -"\X0A" diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T1.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T1.js deleted file mode 100644 index 934affedc0..0000000000 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T1.js +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** - * @name: S7.8.4_A7.4_T1; - * @section: 7.8.4; - * @assertion: UnicodeEscapeSequence \U HexDigit HexDigit HexDigit HexDigit is incorrect; - * @description: Checking if execution of "\U0001" passes; - * @negative -*/ - -//CHECK#1 -"\U0001" diff --git a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T2.js b/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T2.js deleted file mode 100644 index d96f0f3ffe..0000000000 --- a/test/suite/sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.4_String_Literals/S7.8.4_A7.4_T2.js +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** - * @name: S7.8.4_A7.4_T2; - * @section: 7.8.4; - * @assertion: UnicodeEscapeSequence \U HexDigit HexDigit HexDigit HexDigit is incorrect; - * @description: Checking if execution of "\U000A" passes; - * @negative -*/ - -//CHECK#1 -"\U000A" diff --git a/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.2_The_Greater_than_Operator/S11.8.2_A2.3_T1.js b/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.2_The_Greater_than_Operator/S11.8.2_A2.3_T1.js index a81613eb63..c4a96cc85d 100644 --- a/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.2_The_Greater_than_Operator/S11.8.2_A2.3_T1.js +++ b/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.2_The_Greater_than_Operator/S11.8.2_A2.3_T1.js @@ -2,24 +2,23 @@ // This code is governed by the BSD license found in the LICENSE file. /** - * @name: S11.8.2_A2.3_T1; - * @section: 11.8.2; - * @assertion: ToNumber(second expression) is called first, and then ToNumber(first expression); + * In ES5, First expression should be evaluated first. + * * @description: Checking with "throw"; -*/ + */ //CHECK#1 var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; try { x > y; - $ERROR('#1.1: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x > y throw "y". Actual: ' + (x > y)); + $ERROR('#1.1: Should have thrown'); } catch (e) { - if (e === "x") { - $ERROR('#1.2: ToNumber(second expression) is called first, and then ToNumber(first expression)'); + if (e === "y") { + $ERROR('#1.2: First expression should be evaluated first'); } else { - if (e !== "y") { - $ERROR('#1.3: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x > y throw "y". Actual: ' + (e)); + if (e !== "x") { + $ERROR('#1.3: Failed with: ' + e); } } } diff --git a/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.3_The_Less_than_or_equal_Operator/S11.8.3_A2.3_T1.js b/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.3_The_Less_than_or_equal_Operator/S11.8.3_A2.3_T1.js index ccf7e8adc8..32b5df2a70 100644 --- a/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.3_The_Less_than_or_equal_Operator/S11.8.3_A2.3_T1.js +++ b/test/suite/sputnik/Conformance/11_Expressions/11.8_Relational_Operators/11.8.3_The_Less_than_or_equal_Operator/S11.8.3_A2.3_T1.js @@ -2,24 +2,23 @@ // This code is governed by the BSD license found in the LICENSE file. /** - * @name: S11.8.3_A2.3_T1; - * @section: 11.8.3; - * @assertion: ToNumber(second expression) is called first, and then ToNumber(first expression); + * In ES5, First expression should be evaluated first. + * * @description: Checking with "throw"; -*/ + */ //CHECK#1 var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; try { x <= y; - $ERROR('#1.1: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x <= y throw "y". Actual: ' + (x <= y)); + $ERROR('#1.1: Should have thrown'); } catch (e) { - if (e === "x") { - $ERROR('#1.2: ToNumber(second expression) is called first, and then ToNumber(first expression)'); + if (e === "y") { + $ERROR('#1.2: First expression should be evaluated first'); } else { - if (e !== "y") { - $ERROR('#1.3: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x <= y throw "y". Actual: ' + (e)); + if (e !== "x") { + $ERROR('#1.3: Failed with: ' + e); } } } diff --git a/test/suite/sputnik/Conformance/13_Function_Definition/S13_A5.js b/test/suite/sputnik/Conformance/13_Function_Definition/S13_A5.js deleted file mode 100644 index 44b09b980f..0000000000 --- a/test/suite/sputnik/Conformance/13_Function_Definition/S13_A5.js +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** -* @name: S13_A5; -* @section: 13, 10.1.2; -* @assertion: Only FormalParameterList as arguments list is allowed; -* @description: Trying to use [arg1, arg2, arg3], (arg1, arg2, arg3), etc. as a FormalParameterList; -*/ - -////////////////////////////////////////////////////////////////////////////// -//CHECK#1 -try{ - eval("function __func([arg1, arg2, arg3]){return arguments.length;}"); - $ERROR('#1: eval("function __func([arg1, arg2, arg3]){return arguments.length;}") lead to throwing exception'); -} catch(e){ - if(!(e instanceof SyntaxError)){ - $ERROR('#1.1: eval("function __func([arg1, arg2, arg3]){return arguments.length;}") lead to throwing exception of SyntaxError. Actual: exception is '+e); - } -} -// -////////////////////////////////////////////////////////////////////////////// - -////////////////////////////////////////////////////////////////////////////// -//CHECK#2 -try{ - eval("function __func((arg1, arg2, arg3)){return arguments.length;}"); - $ERROR('#2: eval("function __func((arg1, arg2, arg3)){return arguments.length;}") lead to throwing exception') -} catch(e){ - if(!(e instanceof SyntaxError)){ - $ERROR('#2.1: eval("function __func((arg1, arg2, arg3)){return arguments.length;}") lead to throwing exception of SyntaxError. Actual: exception is '+e); - } -} -// -////////////////////////////////////////////////////////////////////////////// - -////////////////////////////////////////////////////////////////////////////// -//CHECK#3 -try{ - eval("function __func(arg1, arg2, arg3,){return arguments.length;}"); - $ERROR('#3: eval("function __func(arg1, arg2, arg3,){return arguments.length;}") lead to throwing exception') -} catch(e){ - if(!(e instanceof SyntaxError)){ - $ERROR('#3.1: eval("function __func(arg1, arg2, arg3,){return arguments.length;}") lead to throwing exception of SyntaxError. Actual: exception is '+e); - } -} -// -////////////////////////////////////////////////////////////////////////////// diff --git a/test/suite/sputnik/Conformance/15_Native/15.10_RegExp_Objects/15.10.4_The_RegExp_Constructor/S15.10.4.1_A5_T5.js b/test/suite/sputnik/Conformance/15_Native/15.10_RegExp_Objects/15.10.4_The_RegExp_Constructor/S15.10.4.1_A5_T5.js deleted file mode 100644 index a9753166dd..0000000000 --- a/test/suite/sputnik/Conformance/15_Native/15.10_RegExp_Objects/15.10.4_The_RegExp_Constructor/S15.10.4.1_A5_T5.js +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/** -* @name: S15.10.4.1_A5_T5; -* @section: 15.10.4.1; -* @assertion: If F contains any character other than 'g', 'i', or 'm', or if it contains the same one more than once, then throw a SyntaxError exception; -* @description: Checking if using "{toString:function(){return "x";}}" as F leads to throwing the correct exception; -*/ - -//CHECK#1 -try { - $ERROR('#1.1: new RegExp("a|b|[a-b]",{toString:function(){return "x" throw SyntaxError. Actual: ' + (new RegExp("a|b|[a-b]",{toString:function(){return "x"}}))); -} catch (e) { - if ((e instanceof SyntaxError) !== true) { - $ERROR('#1.2: new RegExp("a|b|[a-b]",{toString:function(){return "x" throw SyntaxError. Actual: ' + (e)); - } -} -