Wed, 31 Dec 2014 13:27:57 +0100
Ignore runtime configuration files generated during quality assurance.
michael@0 | 1 | // Copyright 2009 the Sputnik authors. All rights reserved. |
michael@0 | 2 | // This code is governed by the BSD license found in the LICENSE file. |
michael@0 | 3 | |
michael@0 | 4 | /** |
michael@0 | 5 | * ToInt32(first expression) is called first, and then ToInt32(second expression) |
michael@0 | 6 | * |
michael@0 | 7 | * @path ch11/11.10/11.10.3/S11.10.3_A2.3_T1.js |
michael@0 | 8 | * @description Checking with "throw" |
michael@0 | 9 | */ |
michael@0 | 10 | |
michael@0 | 11 | //CHECK#1 |
michael@0 | 12 | var x = { valueOf: function () { throw "x"; } }; |
michael@0 | 13 | var y = { valueOf: function () { throw "y"; } }; |
michael@0 | 14 | try { |
michael@0 | 15 | x | y; |
michael@0 | 16 | $ERROR('#1.1: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x | y throw "x". Actual: ' + (x | y)); |
michael@0 | 17 | } catch (e) { |
michael@0 | 18 | if (e === "y") { |
michael@0 | 19 | $ERROR('#1.2: ToInt32(first expression) is called first, and then ToInt32(second expression)'); |
michael@0 | 20 | } else { |
michael@0 | 21 | if (e !== "x") { |
michael@0 | 22 | $ERROR('#1.3: var x = { valueOf: function () { throw "x"; } }; var y = { valueOf: function () { throw "y"; } }; x | y throw "x". Actual: ' + (e)); |
michael@0 | 23 | } |
michael@0 | 24 | } |
michael@0 | 25 | } |
michael@0 | 26 |