| //------------------------------------------------------------------------------------------------------- | |
| // Copyright (C) Microsoft. All rights reserved. | |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. | |
| //------------------------------------------------------------------------------------------------------- | |
| function makeobj(n) | |
| { | |
| var obj = { }; | |
| for(var i = 0; i < n; ++i) | |
| { | |
| obj[i] = 1; | |
| } | |
| return obj; | |
| } | |
| function testdelete(n) | |
| { | |
| for(var propToDelete = 0; propToDelete <= n; ++propToDelete) | |
| { | |
| for(var iterToDelete = 0; iterToDelete <= n; ++iterToDelete) | |
| { | |
| for(var iterToAdd = 0; iterToAdd <= n; ++iterToAdd) | |
| { | |
| WScript.Echo("testing with " + n + " properties"); | |
| WScript.Echo("deleting property number " + propToDelete + " on iteration " + iterToDelete); | |
| WScript.Echo("adding a property on iteration " + iterToAdd); | |
| var iter = 0; | |
| var o = makeobj(n); | |
| for(var i in o) | |
| { | |
| if(iter == iterToDelete) | |
| delete o[propToDelete]; | |
| if(iter == iterToAdd) | |
| o["xxx"] = 1; | |
| WScript.Echo(i); | |
| ++iter; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| for(var i = 0; i < 8; ++i) | |
| { | |
| testdelete(i); | |
| } |