| OLD | NEW | 
|   1 <!DOCTYPE HTML> |   1 <!DOCTYPE HTML> | 
|   2 <html> |   2 <html> | 
|   3 <head> |   3 <head> | 
|   4 <script src="../../http/tests/inspector/inspector-test.js"></script> |   4 <script src="../../http/tests/inspector/inspector-test.js"></script> | 
|   5 <script src="../../http/tests/inspector/timeline-test.js"></script> |   5 <script src="../../http/tests/inspector/timeline-test.js"></script> | 
|   6 <script> |   6 <script> | 
|   7 function display(callback) |   7 function display(callback) | 
|   8 { |   8 { | 
|   9     requestAnimationFrame(function() { |   9     requestAnimationFrame(function() { | 
|  10         document.body.style.backgroundColor = "blue"; |  10         document.body.style.backgroundColor = "blue"; | 
| (...skipping 27 matching lines...) Expand all  Loading... | 
|  38                 var record = InspectorTest.findFirstTimelineRecord(WebInspector.
    TimelineModel.RecordType.Paint); |  38                 var record = InspectorTest.findFirstTimelineRecord(WebInspector.
    TimelineModel.RecordType.Paint); | 
|  39                 var invalidations = record._event.invalidationTrackingEvents; |  39                 var invalidations = record._event.invalidationTrackingEvents; | 
|  40                 InspectorTest.assertEquals(invalidations.length, 3); |  40                 InspectorTest.assertEquals(invalidations.length, 3); | 
|  41                 InspectorTest.assertEquals(invalidations[0].type, WebInspector.T
    racingTimelineModel.RecordType.StyleRecalcInvalidationTracking); |  41                 InspectorTest.assertEquals(invalidations[0].type, WebInspector.T
    racingTimelineModel.RecordType.StyleRecalcInvalidationTracking); | 
|  42                 InspectorTest.assertEquals(invalidations[0].nodeName, "BODY"); |  42                 InspectorTest.assertEquals(invalidations[0].nodeName, "BODY"); | 
|  43                 InspectorTest.assertEquals(invalidations[1].type, WebInspector.T
    racingTimelineModel.RecordType.StyleRecalcInvalidationTracking); |  43                 InspectorTest.assertEquals(invalidations[1].type, WebInspector.T
    racingTimelineModel.RecordType.StyleRecalcInvalidationTracking); | 
|  44                 InspectorTest.assertEquals(invalidations[1].nodeName, "DIV id='t
    estElement'"); |  44                 InspectorTest.assertEquals(invalidations[1].nodeName, "DIV id='t
    estElement'"); | 
|  45                 InspectorTest.assertEquals(invalidations[2].type, WebInspector.T
    racingTimelineModel.RecordType.LayoutInvalidationTracking); |  45                 InspectorTest.assertEquals(invalidations[2].type, WebInspector.T
    racingTimelineModel.RecordType.LayoutInvalidationTracking); | 
|  46                 InspectorTest.assertEquals(invalidations[2].nodeName, "DIV id='t
    estElement'"); |  46                 InspectorTest.assertEquals(invalidations[2].nodeName, "DIV id='t
    estElement'"); | 
|  47                 InspectorTest.assertGreaterOrEqual(invalidations[2].stackTrace.l
    ength, 1); |  47                 InspectorTest.assertGreaterOrEqual(invalidations[2].stackTrace.l
    ength, 1); | 
|  48                 InspectorTest.invokeAsyncWithTimeline("updateSubframeAndDisplay"
    , next); |  48  | 
 |  49                 next(); | 
|  49             }); |  50             }); | 
|  50         }, |  51         }, | 
|  51  |  52  | 
|  52         function testSubframe(next) |  53         function testSubframe(next) | 
|  53         { |  54         { | 
|  54             // The first paint corresponds to the local frame and should have no
     invalidations. |  55             InspectorTest.invokeAsyncWithTimeline("updateSubframeAndDisplay", fu
    nction() { | 
|  55             var firstPaintRecord = InspectorTest.findFirstTimelineRecord(WebInsp
    ector.TimelineModel.RecordType.Paint); |  56                 // The first paint corresponds to the local frame and should hav
    e no invalidations. | 
|  56             var firstInvalidations = firstPaintRecord._event.invalidationTrackin
    gEvents; |  57                 var firstPaintRecord = InspectorTest.findFirstTimelineRecord(Web
    Inspector.TimelineModel.RecordType.Paint); | 
|  57             InspectorTest.assertEquals(firstInvalidations, undefined); |  58                 var firstInvalidations = firstPaintRecord._event.invalidationTra
    ckingEvents; | 
 |  59                 InspectorTest.assertEquals(firstInvalidations, undefined); | 
|  58  |  60  | 
|  59             // The second paint corresponds to the subframe and should have our 
    layout/style invalidations. |  61                 // The second paint corresponds to the subframe and should have 
    our layout/style invalidations. | 
|  60             var secondPaintRecord = InspectorTest.findTimelineRecord(WebInspecto
    r.TimelineModel.RecordType.Paint, 1); |  62                 var secondPaintRecord = InspectorTest.findTimelineRecord(WebInsp
    ector.TimelineModel.RecordType.Paint, 1); | 
|  61             var secondInvalidations = secondPaintRecord._event.invalidationTrack
    ingEvents; |  63                 var secondInvalidations = secondPaintRecord._event.invalidationT
    rackingEvents; | 
|  62             InspectorTest.assertEquals(secondInvalidations.length, 3); |  64                 InspectorTest.assertEquals(secondInvalidations.length, 3); | 
|  63             InspectorTest.assertEquals(secondInvalidations[0].type, WebInspector
    .TracingTimelineModel.RecordType.StyleRecalcInvalidationTracking); |  65                 InspectorTest.assertEquals(secondInvalidations[0].type, WebInspe
    ctor.TracingTimelineModel.RecordType.StyleRecalcInvalidationTracking); | 
|  64             InspectorTest.assertEquals(secondInvalidations[0].nodeName, "DIV"); |  66                 InspectorTest.assertEquals(secondInvalidations[0].nodeName, "DIV
    "); | 
|  65             InspectorTest.assertEquals(secondInvalidations[1].type, WebInspector
    .TracingTimelineModel.RecordType.LayoutInvalidationTracking); |  67                 InspectorTest.assertEquals(secondInvalidations[1].type, WebInspe
    ctor.TracingTimelineModel.RecordType.LayoutInvalidationTracking); | 
|  66             InspectorTest.assertEquals(secondInvalidations[1].nodeName, "DIV"); |  68                 InspectorTest.assertEquals(secondInvalidations[1].nodeName, "DIV
    "); | 
|  67             InspectorTest.assertGreaterOrEqual(secondInvalidations[1].stackTrace
    .length, 1); |  69                 InspectorTest.assertGreaterOrEqual(secondInvalidations[1].stackT
    race.length, 1); | 
|  68             InspectorTest.assertEquals(secondInvalidations[2].type, WebInspector
    .TracingTimelineModel.RecordType.LayoutInvalidationTracking); |  70                 InspectorTest.assertEquals(secondInvalidations[2].type, WebInspe
    ctor.TracingTimelineModel.RecordType.LayoutInvalidationTracking); | 
|  69             InspectorTest.assertEquals(secondInvalidations[2].nodeName, "#docume
    nt"); |  71                 InspectorTest.assertEquals(secondInvalidations[2].nodeName, "#do
    cument"); | 
|  70             InspectorTest.assertGreaterOrEqual(secondInvalidations[2].stackTrace
    .length, 1); |  72                 InspectorTest.assertGreaterOrEqual(secondInvalidations[2].stackT
    race.length, 1); | 
|  71             next(); |  73  | 
 |  74                 next(); | 
 |  75             }); | 
|  72         } |  76         } | 
|  73     ]); |  77     ]); | 
|  74 } |  78 } | 
|  75 </script> |  79 </script> | 
|  76 </head> |  80 </head> | 
|  77 <body onload="runTest()"> |  81 <body onload="runTest()"> | 
|  78 <p>Tests the Timeline API instrumentation of paint events with layout invalidati
    ons.</p> |  82 <p>Tests the Timeline API instrumentation of paint events with layout invalidati
    ons.</p> | 
|  79 <div id="testElement">PASS</div> |  83 <div id="testElement">PASS</div> | 
|  80 <iframe src="resources/timeline-iframe-paint.html" style="position: absolute; le
    ft: 40px; top: 40px; width: 100px; height: 100px; border: none"></iframe> |  84 <iframe src="resources/timeline-iframe-paint.html" style="position: absolute; le
    ft: 40px; top: 40px; width: 100px; height: 100px; border: none"></iframe> | 
|  81 </body> |  85 </body> | 
|  82 </html> |  86 </html> | 
| OLD | NEW |