mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 03:34:08 +01:00 
			
		
		
		
	* [javascriptcore-test262-automation] changes from git@github.com:WebKit/webkit.git at sha 949e26452cfa153a7f4afe593da97e2fe9e1b706 on Tue Jul 03 2018 14:35:15 GMT-0400 (Eastern Daylight Time)
		
			
				
	
	
		
			39 lines
		
	
	
		
			763 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			763 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| function shouldBe(actual, expected) {
 | |
|     if (actual !== expected)
 | |
|         throw new Error('bad value: ' + actual);
 | |
| }
 | |
| 
 | |
| function test1(array)
 | |
| {
 | |
|     return 2 in array;
 | |
| }
 | |
| noInline(test1);
 | |
| 
 | |
| var array = [1, 2, 3, 4];
 | |
| ensureArrayStorage(array);
 | |
| for (var i = 0; i < 1e5; ++i)
 | |
|     shouldBe(test1(array), true);
 | |
| 
 | |
| var array = [1, 2, , 4];
 | |
| ensureArrayStorage(array);
 | |
| shouldBe(test1(array), false);
 | |
| 
 | |
| var array = [];
 | |
| ensureArrayStorage(array);
 | |
| shouldBe(test1(array), false);
 | |
| 
 | |
| function test2(array)
 | |
| {
 | |
|     return 2 in array;
 | |
| }
 | |
| noInline(test2);
 | |
| 
 | |
| var array1 = [1, 2, 3, 4];
 | |
| ensureArrayStorage(array1);
 | |
| var array2 = [1, 2];
 | |
| ensureArrayStorage(array2);
 | |
| for (var i = 0; i < 1e5; ++i)
 | |
|     shouldBe(test2(array2), false);
 | |
| shouldBe(test2(array2), false);
 | |
| shouldBe(test2(array1), true);
 |