whitespace.js (1470B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 description: | 6 White Space and Line Terminator between "--" and UnaryExpression are 7 allowed 8 es5id: 11.4.5_A1 9 esid: sec-prefix-decrement-operator 10 ---*/ 11 12 var x = 0; 13 14 assert.sameValue(-- x, -1, 'U+0009 (expression)'); 15 assert.sameValue(x, -1, 'U+0009 (side effect)'); 16 17 assert.sameValue(--x, -2, 'U+000B (expression)'); 18 assert.sameValue(x, -2, 'U+000B (side effect)'); 19 20 assert.sameValue(--x, -3, 'U+000C (expression)'); 21 assert.sameValue(x, -3, 'U+000C (side effect)'); 22 23 assert.sameValue(-- x, -4, 'U+0020 (expression)'); 24 assert.sameValue(x, -4, 'U+0020 (side effect)'); 25 26 assert.sameValue(-- x, -5, 'U+00A0 (expression)'); 27 assert.sameValue(x, -5, 'U+00A0 (side effect)'); 28 29 assert.sameValue(-- 30 x, -6, 'U+000A (expression)'); 31 assert.sameValue(x, -6, 'U+000A (side effect)'); 32 33 assert.sameValue(--x, -7, 'U+000D (expression)'); 34 assert.sameValue(x, -7, 'U+000D (side effect)'); 35 36 assert.sameValue(-- x, -8, 'U+2028 (expression)'); 37 assert.sameValue(x, -8, 'U+2028 (side effect)'); 38 39 assert.sameValue(-- x, -9, 'U+2029 (expression)'); 40 assert.sameValue(x, -9, 'U+2029 (side effect)'); 41 42 assert.sameValue( 43 -- 44 x, 45 -10, 46 'U+0009U+000BU+000CU+0020U+00A0U+000AU+000DU+2028U+2029 (expression)' 47 ); 48 assert.sameValue( 49 x, -10, 'U+0009U+000BU+000CU+0020U+00A0U+000AU+000DU+2028U+2029 (side effect)' 50 ); 51 52 reportCompare(0, 0);