MCPcopy Index your code
hub / github.com/nodejs/node / TestInheritedElementSort

Function TestInheritedElementSort

deps/v8/test/mjsunit/array-sort.js:196–224  ·  view source on GitHub ↗
(depth)

Source from the content-addressed store, hash-verified

194
195
196function TestInheritedElementSort(depth) {
197 var length = depth * 2 + 3;
198 var obj = {length: length};
199 obj[depth * 2 + 1] = 0;
200 for (var i = 0; i < depth; i++) {
201 var newObj = {};
202 newObj.__proto__ = obj;
203 obj[i] = undefined;
204 obj[i + depth + 1] = depth - i;
205 obj = newObj;
206 }
207 // expected (inherited) object: [undef1,...undefdepth,hole,1,...,depth,0,hole]
208
209 Array.prototype.sort.call(obj, function(a,b) { return (b < a) - (a < b); });
210 // expected result: [0,1,...,depth,undef1,...,undefdepth,hole]
211 var name = "SortInherit("+depth+")-";
212
213 assertEquals(length, obj.length, name+"length");
214 for (var i = 0; i <= depth; i++) {
215 assertTrue(obj.hasOwnProperty(i), name + "hasvalue" + i);
216 assertEquals(i, obj[i], name + "value" + i);
217 }
218 for (var i = depth + 1; i < depth * 2 + 1; i++) {
219 assertEquals(undefined, obj[i], name + "undefined" + i);
220 assertTrue(obj.hasOwnProperty(i), name + "hasundefined" + i);
221 }
222 assertFalse(obj.hasOwnProperty(depth * 2 + 1), name + "hashole")
223 assertFalse(obj.hasOwnProperty(depth * 2 + 2), name + "hashole");
224}
225
226TestInheritedElementSort(5);
227TestInheritedElementSort(15);

Callers 1

array-sort.jsFile · 0.85

Calls 5

assertTrueFunction · 0.70
assertEqualsFunction · 0.50
assertFalseFunction · 0.50
callMethod · 0.45
hasOwnPropertyMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…