mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 03:34:08 +01:00 
			
		
		
		
	The tests for the parsing of compound assignment expressions were expressed using eval. This made the tests more complex than necessary and also prevented the tests from providing value to ECMAScript parsers. Remove the use of eval and instead express the expectations with literal source text.
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // Copyright 2009 the Sputnik authors.  All rights reserved.
 | ||
| // This code is governed by the BSD license found in the LICENSE file.
 | ||
| 
 | ||
| /*---
 | ||
| info: |
 | ||
|     White Space and Line Terminator between LeftHandSideExpression and "@="
 | ||
|     or between "@=" and AssignmentExpression are allowed
 | ||
| es5id: 11.13.2_A1_T10
 | ||
| esid: sec-assignment-operators
 | ||
| description: Checking by using eval, check operator is x ^= y
 | ||
| ---*/
 | ||
| 
 | ||
| var x;
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x	^=	1, 0, 'U+0009 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+0009 (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x^=1, 0, 'U+000B (expression)');
 | ||
| assert.sameValue(x, 0, 'U+000B (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x^=1, 0, 'U+000C (expression)');
 | ||
| assert.sameValue(x, 0, 'U+000C (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x ^= 1, 0, 'U+0020 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+0020 (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x ^= 1, 0, 'U+00A0 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+00A0 (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x
 | ||
| ^=
 | ||
| 1, 0, 'U+000A (expression)');
 | ||
| assert.sameValue(x, 0, 'U+000A (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x
 | ||
| ^=
 | ||
| 1, 0, 'U+000D (expression)');
 | ||
| assert.sameValue(x, 0, 'U+000D (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x
^=
1, 0, 'U+2028 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+2028 (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x
^=
1, 0, 'U+2029 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+2029 (side effect)');
 | ||
| 
 | ||
| x = 1;
 | ||
| assert.sameValue(x	  
 | ||
| 
 | ||
| 
^=	  
 | ||
| 
 | ||
| 
1, 0, 'U+0009U+000BU+000CU+0020U+00A0U+000AU+000DU+2028U+2029 (expression)');
 | ||
| assert.sameValue(x, 0, 'U+0009U+000BU+000CU+0020U+00A0U+000AU+000DU+2028U+2029 (side effect)');
 |