diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /js/src/tests/test262/ch11/11.8/11.8.1 | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'js/src/tests/test262/ch11/11.8/11.8.1')
38 files changed, 1401 insertions, 0 deletions
diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A1.js new file mode 100644 index 000000000..5203b7341 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A1.js @@ -0,0 +1,60 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * White Space and Line Terminator between RelationalExpression and "<" or between "<" and ShiftExpression are allowed + * + * @path ch11/11.8/11.8.1/S11.8.1_A1.js + * @description Checking by using eval + */ + +//CHECK#1 +if (eval("0\u0009<\u00091") !== true) { + $ERROR('#1: (0\\u0009<\\u00091) === true'); +} + +//CHECK#2 +if (eval("0\u000B<\u000B1") !== true) { + $ERROR('#2: (0\\u000B<\\u000B1) === true'); +} + +//CHECK#3 +if (eval("0\u000C<\u000C1") !== true) { + $ERROR('#3: (0\\u000C<\\u000C1) === true'); +} + +//CHECK#4 +if (eval("0\u0020<\u00201") !== true) { + $ERROR('#4: (0\\u0020<\\u00201) === true'); +} + +//CHECK#5 +if (eval("0\u00A0<\u00A01") !== true) { + $ERROR('#5: (0\\u00A0<\\u00A01) === true'); +} + +//CHECK#6 +if (eval("0\u000A<\u000A1") !== true) { + $ERROR('#6: (0\\u000A<\\u000A1) === true'); +} + +//CHECK#7 +if (eval("0\u000D<\u000D1") !== true) { + $ERROR('#7: (0\\u000D<\\u000D1) === true'); +} + +//CHECK#8 +if (eval("0\u2028<\u20281") !== true) { + $ERROR('#8: (0\\u2028<\\u20281) === true'); +} + +//CHECK#9 +if (eval("0\u2029<\u20291") !== true) { + $ERROR('#9: (0\\u2029<\\u20291) === true'); +} + +//CHECK#10 +if (eval("0\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u2029<\u0009\u000B\u000C\u0020\u00A0\u000A\u000D\u2028\u20291") !== true) { + $ERROR('#10: (0\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u2029<\\u0009\\u000B\\u000C\\u0020\\u00A0\\u000A\\u000D\\u2028\\u20291) === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T1.js new file mode 100644 index 000000000..4bcd448cb --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T1.js @@ -0,0 +1,43 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y uses GetValue + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.1_T1.js + * @description Either Type is not Reference or GetBase is not null + */ + +//CHECK#1 +if (1 < 2 !== true) { + $ERROR('#1: 1 < 2 === true'); +} + +//CHECK#2 +var x = 1; +if (x < 2 !== true) { + $ERROR('#2: var x = 1; x < 2 === true'); +} + +//CHECK#3 +var y = 2; +if (1 < y !== true) { + $ERROR('#3: var y = 2; 1 < y === true'); +} + +//CHECK#4 +var x = 1; +var y = 2; +if (x < y !== true) { + $ERROR('#4: var x = 1; var y = 2; x < y === true'); +} + +//CHECK#5 +var objectx = new Object(); +var objecty = new Object(); +objectx.prop = 1; +objecty.prop = 2; +if (objectx.prop < objecty.prop !== true) { + $ERROR('#5: var objectx = new Object(); var objecty = new Object(); objectx.prop = 1; objecty.prop = 2; objectx.prop < objecty.prop === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T2.js new file mode 100644 index 000000000..591c7a7a5 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T2.js @@ -0,0 +1,21 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y uses GetValue + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.1_T2.js + * @description If GetBase(x) is null, throw ReferenceError + */ + +//CHECK#1 +try { + x < 1; + $ERROR('#1.1: x < 1 throw ReferenceError. Actual: ' + (x < 1)); +} +catch (e) { + if ((e instanceof ReferenceError) !== true) { + $ERROR('#1.2: x < 1 throw ReferenceError. Actual: ' + (e)); + } +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T3.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T3.js new file mode 100644 index 000000000..b71cac528 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.1_T3.js @@ -0,0 +1,22 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y uses GetValue + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.1_T3.js + * @description If GetBase(y) is null, throw ReferenceError + */ + +//CHECK#1 +try { + 1 < y; + $ERROR('#1.1: 1 < y throw ReferenceError. Actual: ' + (1 < y)); +} +catch (e) { + if ((e instanceof ReferenceError) !== true) { + $ERROR('#1.2: 1 < y throw ReferenceError. Actual: ' + (e)); + } +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.2_T1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.2_T1.js new file mode 100644 index 000000000..8641cf4f2 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.2_T1.js @@ -0,0 +1,71 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y uses [[Default Value]] + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.2_T1.js + * @description If Type(value) is Object, evaluate ToPrimitive(value, Number) + */ + +//CHECK#1 +if ({valueOf: function() {return 0}} < 1 !== true) { + $ERROR('#1: {valueOf: function() {return 1}} < 1 === true. Actual: ' + ({valueOf: function() {return 1}} < 1)); +} + +//CHECK#2 +if ({valueOf: function() {return 0}, toString: function() {return 2}} < 1 !== true) { + $ERROR('#2: {valueOf: function() {return 1}, toString: function() {return 0}} < 1 === true. Actual: ' + ({valueOf: function() {return 1}, toString: function() {return 0}} < 1)); +} + +//CHECK#3 +if ({valueOf: function() {return 0}, toString: function() {return {}}} < 1 !== true) { + $ERROR('#3: {valueOf: function() {return 1}, toString: function() {return {}}} < 1 === true. Actual: ' + ({valueOf: function() {return 1}, toString: function() {return {}}} < 1)); +} + +//CHECK#4 +try { + if ({valueOf: function() {return 0}, toString: function() {throw "error"}} < 1 !== true) { + $ERROR('#4.1: {valueOf: function() {return 1}, toString: function() {throw "error"}} < 1 === true. Actual: ' + ({valueOf: function() {return 1}, toString: function() {throw "error"}} < 1)); + } +} +catch (e) { + if (e === "error") { + $ERROR('#4.2: {valueOf: function() {return 0}, toString: function() {throw "error"}} < 1 not throw "error"'); + } else { + $ERROR('#4.3: {valueOf: function() {return 0}, toString: function() {throw "error"}} < 1 not throw Error. Actual: ' + (e)); + } +} + +//CHECK#5 +if (1 < {toString: function() {return 2}} !== true) { + $ERROR('#5: 1 < {toString: function() {return 2}} === true. Actual: ' + (1 < {toString: function() {return 2}})); +} + +//CHECK#6 +if (1 < {valueOf: function() {return {}}, toString: function() {return 2}} !== true) { + $ERROR('#6: 1 < {valueOf: function() {return {}}, toString: function() {return 2}} === true. Actual: ' + (1 < {valueOf: function() {return {}}, toString: function() {return 2}})); +} + +//CHECK#7 +try { + 1 < {valueOf: function() {throw "error"}, toString: function() {return 2}}; + $ERROR('#7.1: 1 < {valueOf: function() {throw "error"}, toString: function() {return 2}} throw "error". Actual: ' + (1 < {valueOf: function() {throw "error"}, toString: function() {return 2}})); +} +catch (e) { + if (e !== "error") { + $ERROR('#7.2: 1 < {valueOf: function() {throw "error"}, toString: function() {return 2}} throw "error". Actual: ' + (e)); + } +} + +//CHECK#8 +try { + 1 < {valueOf: function() {return {}}, toString: function() {return {}}}; + $ERROR('#8.1: 1 < {valueOf: function() {return {}}, toString: function() {return {}}} throw TypeError. Actual: ' + (1 < {valueOf: function() {return {}}, toString: function() {return {}}})); +} +catch (e) { + if ((e instanceof TypeError) !== true) { + $ERROR('#8.2: 1 < {valueOf: function() {return {}}, toString: function() {return {}}} throw TypeError. Actual: ' + (e)); + } +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.3_T1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.3_T1.js new file mode 100644 index 000000000..9f7c478ca --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.3_T1.js @@ -0,0 +1,26 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * ToNumber(first expression) is called first, and then ToNumber(second expression) + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.3_T1.js + * @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 "x". Actual: ' + (x < y)); +} catch (e) { + if (e === "y") { + $ERROR('#1.2: ToNumber(first expression) is called first, and then ToNumber(second expression)'); + } else { + if (e !== "x") { + $ERROR('#1.3: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x < y throw "x". Actual: ' + (e)); + } + } +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T1.js new file mode 100644 index 000000000..739640488 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T1.js @@ -0,0 +1,23 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * First expression is evaluated first, and then second expression + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.4_T1.js + * @description Checking with "=" + */ + +//CHECK#1 +var x = 1; +if ((x = 0) < x !== false) { + $ERROR('#1: var x = 1; (x = 0) < x === false'); +} + +//CHECK#2 +var x = 0; +if (x < (x = 1) !== true) { + $ERROR('#2: var x = 0; x < (x = 1) === true'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T2.js new file mode 100644 index 000000000..acd8c1274 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T2.js @@ -0,0 +1,26 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * First expression is evaluated first, and then second expression + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.4_T2.js + * @description Checking with "throw" + */ + +//CHECK#1 +var x = function () { throw "x"; }; +var y = function () { throw "y"; }; +try { + x() < y(); + $ERROR('#1.1: var x = function () { throw "x"; }; var y = function () { throw "y"; }; x() < y() throw "x". Actual: ' + (x() < y())); +} catch (e) { + if (e === "y") { + $ERROR('#1.2: First expression is evaluated first, and then second expression'); + } else { + if (e !== "x") { + $ERROR('#1.3: var x = function () { throw "x"; }; var y = function () { throw "y"; }; x() < y() throw "x". Actual: ' + (e)); + } + } +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T3.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T3.js new file mode 100644 index 000000000..657ef95f2 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A2.4_T3.js @@ -0,0 +1,27 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * First expression is evaluated first, and then second expression + * + * @path ch11/11.8/11.8.1/S11.8.1_A2.4_T3.js + * @description Checking with undeclarated variables + */ + +//CHECK#1 +try { + x < (x = 1); + $ERROR('#1.1: x < (x = 1) throw ReferenceError. Actual: ' + (x < (x = 1))); +} +catch (e) { + if ((e instanceof ReferenceError) !== true) { + $ERROR('#1.2: x < (x = 1) throw ReferenceError. Actual: ' + (e)); + } +} + +//CHECK#2 +if ((y = 1) < y !== false) { + $ERROR('#2: (y = 1) < y === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.1.js new file mode 100644 index 000000000..0d01c8f9f --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.1.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T1.1.js + * @description Type(Primitive(x)) and Type(Primitive(y)) vary between primitive boolean and Boolean object + */ + +//CHECK#1 +if (true < true !== false) { + $ERROR('#1: true < true === false'); +} + +//CHECK#2 +if (new Boolean(true) < true !== false) { + $ERROR('#2: new Boolean(true) < true === false'); +} + +//CHECK#3 +if (true < new Boolean(true) !== false) { + $ERROR('#3: true < new Boolean(true) === false'); +} + +//CHECK#4 +if (new Boolean(true) < new Boolean(true) !== false) { + $ERROR('#4: new Boolean(true) < new Boolean(true) === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.2.js new file mode 100644 index 000000000..afec980fd --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.2.js @@ -0,0 +1,31 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T1.2.js + * @description Type(Primitive(x)) and Type(Primitive(y)) vary between primitive number and Number object + */ + +//CHECK#1 +if (1 < 1 !== false) { + $ERROR('#1: 1 < 1 === false'); +} + +//CHECK#2 +if (new Number(1) < 1 !== false) { + $ERROR('#2: new Number(1) < 1 === false'); +} + +//CHECK#3 +if (1 < new Number(1) !== false) { + $ERROR('#3: 1 < new Number(1) === false'); +} + +//CHECK#4 +if (new Number(1) < new Number(1) !== false) { + $ERROR('#4: new Number(1) < new Number(1) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.3.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.3.js new file mode 100644 index 000000000..7964cd27d --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T1.3.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T1.3.js + * @description Type(Primitive(x)) and Type(Primitive(y)) vary between Null and Undefined + */ + +//CHECK#1 +if (null < undefined !== false) { + $ERROR('#1: null < undefined === false'); +} + +//CHECK#2 +if (undefined < null !== false) { + $ERROR('#2: undefined < null === false'); +} + +//CHECK#3 +if (undefined < undefined !== false) { + $ERROR('#3: undefined < undefined === false'); +} + +//CHECK#4 +if (null < null !== false) { + $ERROR('#4: null < null === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.1.js new file mode 100644 index 000000000..acbeb65db --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.1.js @@ -0,0 +1,50 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.1.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types are Number (primitive or object) or Boolean (primitive and object) + */ + +//CHECK#1 +if (true < 1 !== false) { + $ERROR('#1: true < 1 === false'); +} + +//CHECK#2 +if (1 < true !== false) { + $ERROR('#2: 1 < true === false'); +} + +//CHECK#3 +if (new Boolean(true) < 1 !== false) { + $ERROR('#3: new Boolean(true) < 1 === false'); +} + +//CHECK#4 +if (1 < new Boolean(true) !== false) { + $ERROR('#4: 1 < new Boolean(true) === false'); +} + +//CHECK#5 +if (true < new Number(1) !== false) { + $ERROR('#5: true < new Number(1) === false'); +} + +//CHECK#6 +if (new Number(1) < true !== false) { + $ERROR('#6: new Number(1) < true === false'); +} + +//CHECK#7 +if (new Boolean(true) < new Number(1) !== false) { + $ERROR('#7: new Boolean(true) < new Number(1) === false'); +} + +//CHECK#8 +if (new Number(1) < new Boolean(true) !== false) { + $ERROR('#8: new Number(1) < new Boolean(true) === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.2.js new file mode 100644 index 000000000..e67f1c50a --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.2.js @@ -0,0 +1,60 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.2.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between Number (primitive or object) and String (primitive and object) + */ + +//CHECK#1 +if ("1" < 1 !== false) { + $ERROR('#1: "1" < 1 === false'); +} + +//CHECK#2 +if (1 < "1" !== false) { + $ERROR('#2: 1 < "1" === false'); +} + +//CHECK#3 +if (new String("1") < 1 !== false) { + $ERROR('#3: new String("1") < 1 === false'); +} + +//CHECK#4 +if (1 < new String("1") !== false) { + $ERROR('#4: 1 < new String("1") === false'); +} + +//CHECK#5 +if ("1" < new Number(1) !== false) { + $ERROR('#5: "1" < new Number(1) === false'); +} + +//CHECK#6 +if (new Number(1) < "1" !== false) { + $ERROR('#6: new Number(1) < "1" === false'); +} + +//CHECK#7 +if (new String("1") < new Number(1) !== false) { + $ERROR('#7: new String("1") < new Number(1) === false'); +} + +//CHECK#8 +if (new Number(1) < new String("1") !== false) { + $ERROR('#8: new Number(1) < new String("1") === false'); +} + +//CHECK#9 +if ("x" < 1 !== false) { + $ERROR('#9: "x" < 1 === false'); +} + +//CHECK#10 +if (1 < "x" !== false) { + $ERROR('#10: 1 < "x" === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.3.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.3.js new file mode 100644 index 000000000..32d4fa5fa --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.3.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.3.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between Number (primitive or object) and Null + */ + +//CHECK#1 +if (1 < null !== false) { + $ERROR('#1: 1 < null === false'); +} + +//CHECK#2 +if (null < 1 !== true) { + $ERROR('#2: null < 1 === true'); +} + +//CHECK#3 +if (new Number(1) < null !== false) { + $ERROR('#3: new Number(1) < null === false'); +} + +//CHECK#4 +if (null < new Number(1) !== true) { + $ERROR('#4: null < new Number(1) === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.4.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.4.js new file mode 100644 index 000000000..19ce587cb --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.4.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.4.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between Number (primitive or object) and Undefined + */ + +//CHECK#1 +if (1 < undefined !== false) { + $ERROR('#1: 1 < undefined === false'); +} + +//CHECK#2 +if (undefined < 1 !== false) { + $ERROR('#2: undefined < 1 === false'); +} + +//CHECK#3 +if (new Number(1) < undefined !== false) { + $ERROR('#3: new Number(1) < undefined === false'); +} + +//CHECK#4 +if (undefined < new Number(1) !== false) { + $ERROR('#4: undefined < new Number(1) === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.5.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.5.js new file mode 100644 index 000000000..2ec157c85 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.5.js @@ -0,0 +1,50 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.5.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between String (primitive or object) and Boolean (primitive and object) + */ + +//CHECK#1 +if (true < "1" !== false) { + $ERROR('#1: true < "1" === false'); +} + +//CHECK#2 +if ("1" < true !== false) { + $ERROR('#2: "1" < true === false'); +} + +//CHECK#3 +if (new Boolean(true) < "1" !== false) { + $ERROR('#3: new Boolean(true) < "1" === false'); +} + +//CHECK#4 +if ("1" < new Boolean(true) !== false) { + $ERROR('#4: "1" < new Boolean(true) === false'); +} + +//CHECK#5 +if (true < new String("1") !== false) { + $ERROR('#5: true < new String("1") === false'); +} + +//CHECK#6 +if (new String("1") < true !== false) { + $ERROR('#6: new String("1") < true === false'); +} + +//CHECK#7 +if (new Boolean(true) < new String("1") !== false) { + $ERROR('#7: new Boolean(true) < new String("1") === false'); +} + +//CHECK#8 +if (new String("1") < new Boolean(true) !== false) { + $ERROR('#8: new String("1") < new Boolean(true) === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.6.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.6.js new file mode 100644 index 000000000..de4ef0016 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.6.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.6.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between String (primitive or object) and Undefined + */ + +//CHECK#1 +if ("1" < undefined !== false) { + $ERROR('#1: "1" < undefined === false'); +} + +//CHECK#2 +if (undefined < "1" !== false) { + $ERROR('#2: undefined < "1" === false'); +} + +//CHECK#3 +if (new String("1") < undefined !== false) { + $ERROR('#3: new String("1") < undefined === false'); +} + +//CHECK#4 +if (undefined < new String("1") !== false) { + $ERROR('#4: undefined < new String("1") === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.7.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.7.js new file mode 100644 index 000000000..97e9c8fdd --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.7.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.7.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between String (primitive or object) and Null + */ + +//CHECK#1 +if ("1" < null !== false) { + $ERROR('#1: "1" < null === false'); +} + +//CHECK#2 +if (null < "1" !== true) { + $ERROR('#2: null < "1" === true'); +} + +//CHECK#3 +if (new String("1") < null !== false) { + $ERROR('#3: new String("1") < null === false'); +} + +//CHECK#4 +if (null < new String("1") !== true) { + $ERROR('#4: null < new String("1") === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.8.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.8.js new file mode 100644 index 000000000..dcd5dfef8 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.8.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.8.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between Boolean (primitive or object) and Undefined + */ + +//CHECK#1 +if (true < undefined !== false) { + $ERROR('#1: true < undefined === false'); +} + +//CHECK#2 +if (undefined < true !== false) { + $ERROR('#2: undefined < true === false'); +} + +//CHECK#3 +if (new Boolean(true) < undefined !== false) { + $ERROR('#3: new Boolean(true) < undefined === false'); +} + +//CHECK#4 +if (undefined < new Boolean(true) !== false) { + $ERROR('#4: undefined < new Boolean(true) === false'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.9.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.9.js new file mode 100644 index 000000000..3e47b7d07 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.1_T2.9.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If Type(Primitive(x)) is not String or Type(Primitive(y)) is not String, then operator x < y returns ToNumber(x) < ToNumber(y) + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.1_T2.9.js + * @description Type(Primitive(x)) is different from Type(Primitive(y)) and both types vary between Boolean (primitive or object) and Null + */ + +//CHECK#1 +if (true < null !== false) { + $ERROR('#1: true < null === false'); +} + +//CHECK#2 +if (null < true !== true) { + $ERROR('#2: null < true === true'); +} + +//CHECK#3 +if (new Boolean(true) < null !== false) { + $ERROR('#3: new Boolean(true) < null === false'); +} + +//CHECK#4 +if (null < new Boolean(true) !== true) { + $ERROR('#4: null < new Boolean(true) === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.1.js new file mode 100644 index 000000000..9e1cb7811 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.1.js @@ -0,0 +1,40 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y returns ToString(x) < ToString(y), if Type(Primitive(x)) is String and Type(Primitive(y)) is String + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.2_T1.1.js + * @description Type(Primitive(x)) and Type(Primitive(y)) vary between primitive string and String object + */ + +//CHECK#1 +if ("1" < "1" !== false) { + $ERROR('#1: "1" < "1" === false'); +} + +//CHECK#2 +if (new String("1") < "1" !== false) { + $ERROR('#2: new String("1") < "1" === false'); +} + +//CHECK#3 +if ("1" < new String("1") !== false) { + $ERROR('#3: "1" < new String("1") === false'); +} + +//CHECK#4 +if (new String("1") < new String("1") !== false) { + $ERROR('#4: new String("1") < new String("1") === false'); +} + +//CHECK#5 +if ("x" < "1" !== false) { + $ERROR('#5: "x" < "1" === false'); +} + +//CHECK#6 +if ("1" < "x" !== true) { + $ERROR('#6: "1" < "x" === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.2.js new file mode 100644 index 000000000..47068903b --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A3.2_T1.2.js @@ -0,0 +1,30 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Operator x < y returns ToString(x) < ToString(y), if Type(Primitive(x)) is String and Type(Primitive(y)) is String + * + * @path ch11/11.8/11.8.1/S11.8.1_A3.2_T1.2.js + * @description Type(Primitive(x)) and Type(Primitive(y)) vary between Object object and Function object + */ + +//CHECK#1 +if (({} < function(){return 1}) !== ({}.toString() < function(){return 1}.toString())) { + $ERROR('#1: ({} < function(){return 1}) === ({}.toString() < function(){return 1}.toString())'); +} + +//CHECK#2 +if ((function(){return 1} < {}) !== (function(){return 1}.toString() < {}.toString())) { + $ERROR('#2: (function(){return 1} < {}) === (function(){return 1}.toString() < {}.toString())'); +} + +//CHECK#3 +if ((function(){return 1} < function(){return 1}) !== (function(){return 1}.toString() < function(){return 1}.toString())) { + $ERROR('#3: (function(){return 1} < function(){return 1}) === (function(){return 1}.toString() < function(){return 1}.toString())'); +} + +//CHECK#4 +if (({} < {}) !== ({}.toString() < {}.toString())) { + $ERROR('#4: ({} < {}) === ({}.toString() < {}.toString())'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.1.js new file mode 100644 index 000000000..5dee6e657 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.1.js @@ -0,0 +1,51 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x is NaN, return false (if result in 11.8.5 is undefined, return false) + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.1.js + * @description y is number primitive + */ + +//CHECK#1 +if ((Number.NaN < 0) !== false) { + $ERROR('#1: (NaN < 0) === false'); +} + +//CHECK#2 +if ((Number.NaN < 1.1) !== false) { + $ERROR('#2: (NaN < 1.1) === false'); +} + +//CHECK#3 +if ((Number.NaN < -1.1) !== false) { + $ERROR('#3: (NaN < -1.1) === false'); +} + +//CHECK#4 +if ((Number.NaN < Number.NaN) !== false) { + $ERROR('#4: (NaN < NaN) === false'); +} + +//CHECK#5 +if ((Number.NaN < Number.POSITIVE_INFINITY) !== false) { + $ERROR('#5: (NaN < +Infinity) === false'); +} + +//CHECK#6 +if ((Number.NaN < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#6: (NaN < -Infinity) === false'); +} + +//CHECK#7 +if ((Number.NaN < Number.MAX_VALUE) !== false) { + $ERROR('#7: (NaN < Number.MAX_VALUE) === false'); +} + +//CHECK#8 +if ((Number.NaN < Number.MIN_VALUE) !== false) { + $ERROR('#8: (NaN < Number.MIN_VALUE) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.10.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.10.js new file mode 100644 index 000000000..2caacdc42 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.10.js @@ -0,0 +1,42 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If y is a prefix of x, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.10.js + * @description x and y are string primitives + */ + +//CHECK#1 +if (("x" < "x") !== false) { + $ERROR('#1: ("x" < "x") === false'); +} + +//CHECK#2 +if (("x" < "") !== false) { + $ERROR('#2: ("x" < "") === false'); +} + +//CHECK#3 +if (("abcd" < "ab") !== false) { + $ERROR('#3: ("abcd" < ab") === false'); +} + +//CHECK#4 +if (("abc\u0064" < "abcd") !== false) { + $ERROR('#4: ("abc\\u0064" < abcd") === false'); +} + +//CHECK#5 +if (("x" + "y" < "x") !== false) { + $ERROR('#5: ("x" + "y" < "x") === false'); +} + +//CHECK#6 +var x = "x"; +if ((x + "y" < x) !== false) { + $ERROR('#6: var x = "x"; (x + "y" < x) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.11.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.11.js new file mode 100644 index 000000000..2c87da030 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.11.js @@ -0,0 +1,53 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x is a prefix of y and x !== y, return true + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.11.js + * @description x and y are string primitives + */ + +//CHECK#1 +if (("x" < "x ") !== true) { + $ERROR('#1: ("x" < "x ") === true'); +} + +//CHECK#2 +if (("" < "x") !== true) { + $ERROR('#2: ("" < "x") === true'); +} + +//CHECK#3 +if (("ab" < "abcd") !== true) { + $ERROR('#3: ("ab" < abcd") === true'); +} + +//CHECK#4 +if (("abcd" < "abc\u0064") !== false) { + $ERROR('#4: ("abcd" < abc\\u0064") === false'); +} + +//CHECK#5 +if (("x" < "x" + "y") !== true) { + $ERROR('#5: ("x" < "x" + "y") === true'); +} + +//CHECK#6 +var x = "x"; +if ((x < x + "y") !== true) { + $ERROR('#6: var x = "x"; (x < x + "y") === true'); +} + +//CHECK#7 +if (("a\u0000" < "a\u0000a") !== true) { + $ERROR('#7: ("a\\u0000" < "a\\u0000a") === true'); +} + +//CHECK#8 +if (("x" < " x") !== false) { + $ERROR('#8: ("x" < " x") === false'); +} + + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T1.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T1.js new file mode 100644 index 000000000..b8f0eb78d --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T1.js @@ -0,0 +1,45 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If neither x, nor y is a prefix of each other, returned result of strings comparison applies a simple lexicographic ordering to the sequences of code point value values + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.12_T1.js + * @description x and y are string primitives + */ + +//CHECK#1 +if (("xx" < "xy") !== true) { + $ERROR('#1: ("xx" < "xy") === true'); +} + +//CHECK#2 +if (("xy" < "xx") !== false) { + $ERROR('#2: ("xy" < "xx") === false'); +} + +//CHECK#3 +if (("x" < "y") !== true) { + $ERROR('#3: ("x" < y") === true'); +} + +//CHECK#4 +if (("aab" < "aba") !== true) { + $ERROR('#4: ("aab" < aba") === true'); +} + +//CHECK#5 +if (("\u0061\u0061\u0061\u0062" < "\u0061\u0061\u0061\u0061") !== false) { + $ERROR('#5: ("\\u0061\\u0061\\u0061\\u0062" < \\u0061\\u0061\\u0061\\u0061") === false'); +} + +//CHECK#6 +if (("a\u0000a" < "a\u0000b") !== true) { + $ERROR('#6: ("a\\u0000a" < "a\\u0000b") === true'); +} + +//CHECK#7 +if (("aB" < "aa") !== true) { + $ERROR('#7: ("aB" < aa") === true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T2.js new file mode 100644 index 000000000..0b0e2d5fb --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.12_T2.js @@ -0,0 +1,45 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If neither x, nor y is a prefix of each other, returned result of strings comparison applies a simple lexicographic ordering to the sequences of code point value values + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.12_T2.js + * @description x and y are string primitives + */ + +//CHECK#1 +if (("0" < "x") !== true) { + $ERROR('#1: ("0" < "x") !== true'); +} + +//CHECK#2 +if (("-" < "0") !== true) { + $ERROR('#2: ("-" < "0") !== true'); +} + +//CHECK#3 +if (("." < "0") !== true) { + $ERROR('#3: ("." < "0") !== true'); +} + +//CHECK#4 +if (("+" < "-") !== true) { + $ERROR('#4: ("+" < "-") !== true'); +} + +//CHECK#5 +if (("-0" < "-1") !== true) { + $ERROR('#5: ("-0" < "-1") !== true'); +} + +//CHECK#6 +if (("+1" < "-1") !== true) { + $ERROR('#6: ("+1" < "-1") !== true'); +} + +//CHECK#7 +if (("1" < "1e-10") !== true) { +$ERROR('#7: ("1" < "1e-10") !== true'); +} + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.2.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.2.js new file mode 100644 index 000000000..2ab4adeb4 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.2.js @@ -0,0 +1,51 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If y is NaN, return false (if result in 11.8.5 is undefined, return false) + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.2.js + * @description x is number primitive + */ + +//CHECK#1 +if ((0 < Number.NaN) !== false) { + $ERROR('#1: (0 < NaN) === false'); +} + +//CHECK#2 +if ((1.1 < Number.NaN) !== false) { + $ERROR('#2: (1.1 < NaN) === false'); +} + +//CHECK#3 +if ((-1.1 < Number.NaN) !== false) { + $ERROR('#3: (-1.1 < NaN) === false'); +} + +//CHECK#4 +if ((Number.NaN < Number.NaN) !== false) { + $ERROR('#4: (NaN < NaN) === false'); +} + +//CHECK#5 +if ((Number.POSITIVE_INFINITY < Number.NaN) !== false) { + $ERROR('#5: (+Infinity < NaN) === false'); +} + +//CHECK#6 +if ((Number.NEGATIVE_INFINITY < Number.NaN) !== false) { + $ERROR('#6: (-Infinity < NaN) === false'); +} + +//CHECK#7 +if ((Number.MAX_VALUE < Number.NaN) !== false) { + $ERROR('#7: (Number.MAX_VALUE < NaN) === false'); +} + +//CHECK#8 +if ((Number.MIN_VALUE < Number.NaN) !== false) { + $ERROR('#8: (Number.MIN_VALUE < NaN) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.3.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.3.js new file mode 100644 index 000000000..1fa8a4988 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.3.js @@ -0,0 +1,47 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x and y are the same number value, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.3.js + * @description x and y are number primitives + */ + +//CHECK#1 +if ((1 < 1) !== false) { + $ERROR('#1: (1 < 1) === false'); +} + +//CHECK#2 +if ((1.1 < 1.1) !== false) { + $ERROR('#2: (1.1 < 1.1) === false'); +} + +//CHECK#3 +if ((-1.1 < -1.1) !== false) { + $ERROR('#3: (-1.1 < -1.1) === false'); +} + +//CHECK#4 +if ((Number.NEGATIVE_INFINITY < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#4: (-Infinity < -Infinity) === false'); +} + +//CHECK#5 +if ((Number.POSITIVE_INFINITY < Number.POSITIVE_INFINITY) !== false) { + $ERROR('#5: (+Infinity < +Infinity) === false'); +} + +//CHECK#6 +if ((Number.MAX_VALUE < Number.MAX_VALUE) !== false) { + $ERROR('#6: (Number.MAX_VALUE < Number.MAX_VALUE) === false'); +} + +//CHECK#7 +if ((Number.MIN_VALUE < Number.MIN_VALUE) !== false) { + $ERROR('#7: (Number.MIN_VALUE < Number.MIN_VALUE) === false'); +} + + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.4.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.4.js new file mode 100644 index 000000000..d04541e42 --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.4.js @@ -0,0 +1,31 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x and y are +0 and -0, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.4.js + * @description Checking all combinations + */ + +//CHECK#1 +if ((0 < 0) !== false) { + $ERROR('#1: (0 < 0) === false'); +} + +//CHECK#2 +if ((-0 < -0) !== false) { + $ERROR('#2: (-0 < -0) === false'); +} + +//CHECK#3 +if ((+0 < -0) !== false) { + $ERROR('#3: (+0 < -0) === false'); +} + +//CHECK#4 +if ((-0 < +0) !== false) { + $ERROR('#4: (-0 < +0) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.5.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.5.js new file mode 100644 index 000000000..d874e0fde --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.5.js @@ -0,0 +1,41 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x is +Infinity, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.5.js + * @description y is number primitive + */ + +//CHECK#1 +if ((Number.POSITIVE_INFINITY < 0) !== false) { + $ERROR('#1: (+Infinity < 0) === false'); +} + +//CHECK#2 +if ((Number.POSITIVE_INFINITY < 1.1) !== false) { + $ERROR('#2: (+Infinity < 1.1) === false'); +} + +//CHECK#3 +if ((Number.POSITIVE_INFINITY < -1.1) !== false) { + $ERROR('#3: (+Infinity < -1.1) === false'); +} + +//CHECK#4 +if ((Number.POSITIVE_INFINITY < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#4: (+Infinity < -Infinity) === false'); +} + +//CHECK#5 +if ((Number.POSITIVE_INFINITY < Number.MAX_VALUE) !== false) { + $ERROR('#5: (+Infinity < Number.MAX_VALUE) === false'); +} + +//CHECK#6 +if ((Number.POSITIVE_INFINITY < Number.MIN_VALUE) !== false) { + $ERROR('#6: (+Infinity < Number.MIN_VALUE) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.6.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.6.js new file mode 100644 index 000000000..2dce0a45a --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.6.js @@ -0,0 +1,41 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If y is +Infinity and x !== y, return true + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.6.js + * @description x is number primitive + */ + +//CHECK#1 +if ((0 < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#1: (0 < +Infinity) === true'); +} + +//CHECK#2 +if ((1.1 < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#2: (1.1 < +Infinity) === true'); +} + +//CHECK#3 +if ((-1.1 < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#3: (-1.1 < +Infinity) === true'); +} + +//CHECK#4 +if ((Number.NEGATIVE_INFINITY < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#4: (-Infinity < +Infinity) === true'); +} + +//CHECK#5 +if ((Number.MAX_VALUE < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#5: (Number.MAX_VALUE < +Infinity) === true'); +} + +//CHECK#6 +if ((Number.MIN_VALUE < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#6: (Number.MIN_VALUE < +Infinity) === true'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.7.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.7.js new file mode 100644 index 000000000..a54ec57be --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.7.js @@ -0,0 +1,41 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x is -Infinity and x !== y, return true + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.7.js + * @description y is number primitive + */ + +//CHECK#1 +if ((Number.NEGATIVE_INFINITY < 0) !== true) { + $ERROR('#1: (-Infinity < 0) === true'); +} + +//CHECK#2 +if ((Number.NEGATIVE_INFINITY < 1.1) !== true) { + $ERROR('#2: (-Infinity < 1.1) === true'); +} + +//CHECK#3 +if ((Number.NEGATIVE_INFINITY < -1.1) !== true) { + $ERROR('#3: (-Infinity < -1.1) === true'); +} + +//CHECK#4 +if ((Number.NEGATIVE_INFINITY < Number.POSITIVE_INFINITY) !== true) { + $ERROR('#4: (-Infinity < +Infinity) === true'); +} + +//CHECK#5 +if ((Number.NEGATIVE_INFINITY < Number.MAX_VALUE) !== true) { + $ERROR('#5: (-Infinity < Number.MAX_VALUE) === true'); +} + +//CHECK#6 +if ((Number.NEGATIVE_INFINITY < Number.MIN_VALUE) !== true) { + $ERROR('#6: (-Infinity < Number.MIN_VALUE) === true'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.8.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.8.js new file mode 100644 index 000000000..ac5202d5a --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.8.js @@ -0,0 +1,41 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If y is -Infinity, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.8.js + * @description x is number primitive + */ + +//CHECK#1 +if ((0 < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#1: (0 < -Infinity) === false'); +} + +//CHECK#2 +if ((1.1 < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#2: (1.1 < -Infinity) === false'); +} + +//CHECK#3 +if ((-1.1 < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#3: (-1.1 < -Infinity) === false'); +} + +//CHECK#4 +if ((Number.POSITIVE_INFINITY < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#4: (+Infinity < -Infinity) === false'); +} + +//CHECK#5 +if ((Number.MAX_VALUE < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#5: (Number.MAX_VALUE < -Infinity) === false'); +} + +//CHECK#6 +if ((Number.MIN_VALUE < Number.NEGATIVE_INFINITY) !== false) { + $ERROR('#6: (Number.MIN_VALUE < -Infinity) === false'); +} + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.9.js b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.9.js new file mode 100644 index 000000000..32839492c --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/S11.8.1_A4.9.js @@ -0,0 +1,52 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * If x is less than y and these values are both finite non-zero, return true; otherwise, return false + * + * @path ch11/11.8/11.8.1/S11.8.1_A4.9.js + * @description x and y are number primitives + */ + +//CHECK#1 +if ((1.1 < 1) !== false) { + $ERROR('#1: (1.1 < 1) === false'); +} + +//CHECK#2 +if ((1 < 1.1) !== true) { + $ERROR('#2: (1 < 1.1) === true'); +} + +//CHECK#3 +if ((-1.1 < -1) !== true) { + $ERROR('#3: (-1.1 < -1) === true'); +} + +//CHECK#4 +if ((-1 < -1.1) !== false) { + $ERROR('#4: (-1 < -1.1) === false'); +} + +//CHECK#5 +if ((0 < 0.1) !== true) { + $ERROR('#5: (0 < 0.1) === true'); +} + +//CHECK#6 +if ((-0.1 < 0) !== true) { + $ERROR('#6: (-0.1 < 0) === true'); +} + +//CHECK#7 +if ((Number.MAX_VALUE/2 < Number.MAX_VALUE) !== true) { + $ERROR('#7: (Number.MAX_VALUE/2 < Number.MAX_VALUE) === true'); +} + +//CHECK#8 +if ((Number.MIN_VALUE < Number.MIN_VALUE*2) !== true) { + $ERROR('#8: (Number.MIN_VALUE < Number.MIN_VALUE*2) === true'); +} + + + diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/browser.js b/js/src/tests/test262/ch11/11.8/11.8.1/browser.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/browser.js diff --git a/js/src/tests/test262/ch11/11.8/11.8.1/shell.js b/js/src/tests/test262/ch11/11.8/11.8.1/shell.js new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/js/src/tests/test262/ch11/11.8/11.8.1/shell.js |