| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- //-------------------------------------------------------------------------------------------------------
- // Copyright (C) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
- //-------------------------------------------------------------------------------------------------------
- //
- //NOTE: this may break if enumeration order policy is changed in Chakra but that doesn't mean we have a bug in TTD
- //
- var x = { a: 1, b: 2};
- var largeObj = {};
- var outerObj = { a: 3, b: 4, c: 5 };
- var innerObj = { a: 3, b: 4, c: 5 };
- var objWithNumber= { a: 12, b: 13, c:23 };
- objWithNumber[13] = "Number13";
- objWithNumber[15] = "Number15";
- var undef;
- var nullValue = null;
- var integer = 3;
- var double = 3.4;
- WScript.SetTimeout(testFunction, 50);
- /////////////////
- function testFunction()
- {
- telemetryLog("Scenario 1: Adding properties on the fly", true);
- for(var i in x)
- {
- if(x[i] == 2)
- {
- x.c = 3;
- x.d = 4;
- }
- telemetryLog(`${x[i]}`, true);
- }
- telemetryLog("Scenario 2: Large number of properties in forin", true);
- for(var k=0; k < 25; k++)
- {
- largeObj["p"+k] = k + 0.3;
- }
- for(var i in largeObj)
- {
- telemetryLog(`${largeObj[i]}`, true);
- }
- telemetryLog("Sceanrio 3: Nested Forin", true);
- for(var i in outerObj)
- {
- telemetryLog(`${i}`, true);
- for(var j in innerObj)
- {
- telemetryLog(`${j}`, true);
- }
- }
- telemetryLog("Scenario 4: Properties and numerical indices in object", true);
- for(var i in objWithNumber)
- {
- telemetryLog(`${objWithNumber[i]}`, true);
- }
- for(var i in undef)
- {
- telemetryLog("FAILED: Entering enumeration of undefined", true);
- }
- for(var i in nullValue)
- {
- telemetryLog("FAILED: Entering enumeration of null value", true);
- }
- for(var i in integer)
- {
- telemetryLog("FAILED: Entering enumeration of integer", true);
- }
- for(var i in double)
- {
- telemetryLog("FAILED: Entering enumeration of double", true);
- }
- emitTTDLog(ttdLogURI);
- }
|