OLD | NEW |
1 <html> | 1 <html> |
2 <head> | 2 <head> |
3 <script src="../../http/tests/inspector/inspector-test.js"></script> | 3 <script src="../../http/tests/inspector/inspector-test.js"></script> |
4 <script src="heap-snapshot-test.js"></script> | 4 <script src="heap-snapshot-test.js"></script> |
5 <script> | 5 <script> |
6 | 6 |
7 function test() | 7 function test() |
8 { | 8 { |
9 WebInspector.inspectorView.showPanel("profiles"); | 9 WebInspector.inspectorView.showPanel("profiles"); |
10 | 10 |
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
308 | 308 |
309 function heapSnapshotNodesProviderTest() | 309 function heapSnapshotNodesProviderTest() |
310 { | 310 { |
311 var snapshot = new WebInspector.JSHeapSnapshot(InspectorTest.cre
ateHeapSnapshotMock(), new WebInspector.HeapSnapshotProgress()); | 311 var snapshot = new WebInspector.JSHeapSnapshot(InspectorTest.cre
ateHeapSnapshotMock(), new WebInspector.HeapSnapshotProgress()); |
312 | 312 |
313 function nodeFilter(node) | 313 function nodeFilter(node) |
314 { | 314 { |
315 return node.type() === "object" && node.name() !== "B" && no
de.name() !== "D"; | 315 return node.type() === "object" && node.name() !== "B" && no
de.name() !== "D"; |
316 } | 316 } |
317 | 317 |
318 var provider = new WebInspector.HeapSnapshotNodesProvider(snapsh
ot, nodeFilter); | 318 var allNodeIndexes = []; |
| 319 for (var i = 0; i < snapshot._nodes.length; i += snapshot._nodeF
ieldCount) |
| 320 allNodeIndexes.push(i); |
| 321 var provider = new WebInspector.HeapSnapshotNodesProvider(snapsh
ot, nodeFilter, allNodeIndexes); |
319 // Sort by names in reverse order. | 322 // Sort by names in reverse order. |
320 InspectorTest.assertEquals(3, provider.length, "nodes provider l
ength"); | 323 provider.sortAndRewind({fieldName1: "name", ascending1: false, f
ieldName2: "id", ascending2: false}); |
321 provider.sort({fieldName1: "name", ascending1: false, fieldName2
: "id", ascending2: false}, 0, 2, 3); | 324 var range = provider.serializeItemsRange(0, 3); |
322 InspectorTest.assertEquals(3, provider.length, "nodes provider l
ength"); | 325 InspectorTest.assertEquals(3, range.totalLength, "Node range tot
al length"); |
323 var names = []; | 326 InspectorTest.assertEquals(0, range.startPosition, "Node range s
tart position"); |
324 for (provider.rewind(); provider.hasNext(); provider.next()) | 327 InspectorTest.assertEquals(3, range.endPosition, "Node range end
position"); |
325 names.push(provider.item().name()); | 328 var names = range.items.map(function(item) |
| 329 { |
| 330 return item.name; |
| 331 }); |
326 InspectorTest.assertEquals("E,C,A", names.join(","), "nodes prov
ider names"); | 332 InspectorTest.assertEquals("E,C,A", names.join(","), "nodes prov
ider names"); |
327 }, | 333 }, |
328 | 334 |
329 function heapSnapshotEdgesProviderTest() | 335 function heapSnapshotEdgesProviderTest() |
330 { | 336 { |
331 var snapshot = new WebInspector.JSHeapSnapshot(InspectorTest.cre
ateHeapSnapshotMock(), new WebInspector.HeapSnapshotProgress()); | 337 var snapshot = new WebInspector.JSHeapSnapshot(InspectorTest.cre
ateHeapSnapshotMock(), new WebInspector.HeapSnapshotProgress()); |
332 | 338 |
333 function edgeFilter(edge) | 339 function edgeFilter(edge) |
334 { | 340 { |
335 return edge.name() === "b"; | 341 return edge.name() === "b"; |
336 } | 342 } |
337 | 343 |
338 var provider = snapshot.createEdgesProviderForTest(snapshot.root
NodeIndex, edgeFilter); | 344 var provider = snapshot.createEdgesProviderForTest(snapshot.root
NodeIndex, edgeFilter); |
339 InspectorTest.assertEquals(1, provider.length, "edges provider l
ength"); | 345 provider.sortAndRewind({fieldName1: "!edgeName", ascending1: fal
se, fieldName2: "id", ascending2: false}); |
340 provider.sort({fieldName1: "!edgeName", ascending1: false, field
Name2: "id", ascending2: false}, 0, 0, 1); | 346 var range = provider.serializeItemsRange(0, 10); |
341 InspectorTest.assertEquals(1, provider.length, "edges provider l
ength"); | 347 InspectorTest.assertEquals(1, range.totalLength, "Edge range tot
al length"); |
342 var names = []; | 348 InspectorTest.assertEquals(0, range.startPosition, "Edge range s
tart position"); |
343 for (provider.rewind(); provider.hasNext(); provider.next()) | 349 InspectorTest.assertEquals(1, range.endPosition, "Edge range end
position"); |
344 names.push(provider.item().name()); | 350 var names = range.items.map(function(item) |
| 351 { |
| 352 return item.name; |
| 353 }); |
345 InspectorTest.assertEquals("b", names.join(","), "edges provider
names"); | 354 InspectorTest.assertEquals("b", names.join(","), "edges provider
names"); |
346 }, | 355 }, |
347 | 356 |
348 function heapSnapshotLoaderTest() | 357 function heapSnapshotLoaderTest() |
349 { | 358 { |
350 var source = InspectorTest.createHeapSnapshotMockRaw(); | 359 var source = InspectorTest.createHeapSnapshotMockRaw(); |
351 var sourceStringified = JSON.stringify(source); | 360 var sourceStringified = JSON.stringify(source); |
352 var partSize = sourceStringified.length >> 3; | 361 var partSize = sourceStringified.length >> 3; |
353 | 362 |
354 var loader = new WebInspector.HeapSnapshotLoader(); | 363 var loader = new WebInspector.HeapSnapshotLoader(); |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
397 </script> | 406 </script> |
398 </head> | 407 </head> |
399 | 408 |
400 <body onload="runTest()"> | 409 <body onload="runTest()"> |
401 <p> | 410 <p> |
402 This test checks HeapSnapshots module. | 411 This test checks HeapSnapshots module. |
403 </p> | 412 </p> |
404 | 413 |
405 </body> | 414 </body> |
406 </html> | 415 </html> |
OLD | NEW |