// vim: set ts=8 sts=4 et sw=4 tw=99: function testBadSetElems(obj, key) { obj[key] = 5; obj[-1] = 5; var L = obj; L[L] = L; obj = []; obj.K = 5; obj[2] = 5; var T = "a"; obj[T] = 12; obj = []; obj[Object] = key; } function testDenseSets(L) { var obj = [,,,,,,,,,,]; obj[2] = 2; assertEq(obj[2], 2); var T = L; assertEq(obj[T], 2); assertEq(obj.length, 10); obj[10] = T; assertEq(obj[10], T); assertEq(obj.length, 11); var K = T + 9; obj[K] = K; assertEq(obj[K], K); assertEq(obj.length, 12); obj[K + 1] = obj; assertEq(obj[K + 1], obj); assertEq(obj.length, 13); } for (var i = 0; i < 10; i++) { testBadSetElems([], -1); testDenseSets(2); }