0

Remove layout tests for the old timeline frame model

This CL removes 3 layout tests that tested the old timeline frames model
which is being removed in DevTools [crrev.com/c/5068258].

All of these tests are either replicated right now by unit tests in
DevTools, or will be very soon as part of the work to migrate the frames
model.

Bug: 1450174, 1499182
Change-Id: I3ec0df0f28b4d290e23e4b6a713b4ea3f0cc89e1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5071353
Reviewed-by: Paul Irish <paulirish@chromium.org>
Reviewed-by: Philip Pfaffe <pfaffe@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Philip Pfaffe <pfaffe@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Simon Zünd <szuend@chromium.org>
Commit-Queue: Simon Zünd <szuend@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1231183}
This commit is contained in:
Jack Franklin
2023-11-30 08:02:55 +00:00
committed by Chromium LUCI CQ
parent af68429dfd
commit 585569b34a
9 changed files with 224 additions and 440 deletions

448
.gitmodules vendored

File diff suppressed because it is too large Load Diff

@ -761,16 +761,6 @@ crbug.com/874695 [ Mac10.15 Release ] virtual/threaded/http/tests/devtools/traci
crbug.com/874695 [ Mac11 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-layout/timeline-layout-with-invalidations.js [ Slow ]
crbug.com/874695 [ Mac12 ] virtual/threaded/http/tests/devtools/tracing/timeline-layout/timeline-layout-with-invalidations.js [ Slow ]
crbug.com/874695 [ Release Win ] virtual/threaded/http/tests/devtools/tracing/timeline-layout/timeline-layout-with-invalidations.js [ Slow ]
crbug.com/874695 [ Linux ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac10.15 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac11 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac11-arm64 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac12 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac12-arm64 Release ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac13 ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Mac13-arm64 ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/874695 [ Release Win ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Slow ]
crbug.com/1494075 virtual/threaded/synthetic_gestures/synthetic-pinch-zoom-gesture-touchpad-zoom-in-slow-desktop.html [ Slow ]
crbug.com/1494075 virtual/threaded/synthetic_gestures/synthetic-pinch-zoom-gesture-touchpad-zoom-in-slow.html [ Slow ]
crbug.com/1494075 virtual/threaded/synthetic_gestures/synthetic-pinch-zoom-gesture-touchpad-zoom-out-slow.html [ Slow ]

@ -2021,8 +2021,6 @@ crbug.com/613659 external/wpt/quirks/percentage-height-calculation.html [ Failur
crbug.com/619978 fast/css/giant-stylesheet-crash.html [ Crash Failure Pass Timeout ]
crbug.com/399507 virtual/threaded/http/tests/devtools/tracing/timeline-paint/layer-tree.js [ Failure Pass Timeout ]
# Working on getting the CSP tests going:
# These tests will be added back soon:
@ -3856,9 +3854,6 @@ crbug.com/757165 [ Win ] paint/invalidation/filters/filter-repaint-on-accelerate
# Antialiasing error
crbug.com/845973 virtual/display-compositor-pixel-dump/fast/canvas/display-compositor-pixel-dump/OffscreenCanvas-opaque-background-compositing.html [ Failure Pass ]
# Tests occasionaly timing out (flaky) on WebKit Win7 dbg builder
crbug.com/757955 http/tests/devtools/tracing/timeline-paint/layer-tree.js [ Failure Pass Timeout ]
# This test has a fixed number of time which can depend on performance.
crbug.com/669329 http/tests/devtools/tracing/timeline-js/timeline-runtime-stats.js [ Crash Failure Pass Timeout ]
@ -4093,7 +4088,6 @@ crbug.com/922951 http/tests/cache/subresource-fragment-identifier.html [ Crash F
crbug.com/922951 http/tests/history/back-to-post.html [ Crash Failure Pass Timeout ]
crbug.com/922951 http/tests/webaudio/autoplay-crossorigin.html [ Crash Failure Pass Timeout ]
crbug.com/922951 [ Release Win ] media/controls/overflow-menu-hide-on-click-outside-stoppropagation.html [ Crash Failure Pass Timeout ]
crbug.com/922951 virtual/threaded/http/tests/devtools/tracing/frame-model-instrumentation.js [ Crash Failure Pass Timeout ]
crbug.com/922951 virtual/threaded/http/tests/devtools/tracing/timeline-layout/timeline-layout-with-invalidations.js [ Crash Failure Pass Timeout ]
crbug.com/910979 http/tests/html/validation-bubble-oopif-clip.html [ Crash Failure Pass Timeout ]
@ -5131,9 +5125,6 @@ crbug.com/1341689 [ Linux ] media/controls/overflow-menu-focus.html [ Failure Pa
crbug.com/1345752 [ Win ] media/controls/overflow-menu-focus.html [ Failure Pass ]
# Following tests timeout on mac11-arm64
crbug.com/1249176 [ Mac11-arm64 ] http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Failure Timeout ]
# http/tests/intersection-observer/cross-origin-iframe-with-nesting.html tests
crbug.com/1450030 [ Mac11-arm64 ] http/tests/intersection-observer/cross-origin-iframe-with-nesting.html [ Failure Pass Timeout ]
crbug.com/1450030 [ Mac12-arm64 ] http/tests/intersection-observer/cross-origin-iframe-with-nesting.html [ Failure Pass Timeout ]
@ -5150,8 +5141,6 @@ crbug.com/1249176 [ Mac11-arm64 ] paint/markers/document-markers-font-8px.html [
crbug.com/1249176 [ Mac12-arm64 ] paint/markers/document-markers-font-8px.html [ Failure Pass ]
crbug.com/1249176 [ Mac11-arm64 ] paint/markers/document-markers-zoom-2000.html [ Failure Pass ]
crbug.com/1249176 [ Mac12-arm64 ] paint/markers/document-markers-zoom-2000.html [ Failure Pass ]
crbug.com/1249176 [ Mac11-arm64 ] http/tests/devtools/tracing/frame-model-instrumentation.js [ Failure Pass ]
crbug.com/1249176 [ Mac12-arm64 ] http/tests/devtools/tracing/frame-model-instrumentation.js [ Failure Pass ]
crbug.com/1249176 [ Mac11-arm64 ] inspector-protocol/layout-fonts/lang-fallback.js [ Failure Pass ]
crbug.com/1249176 [ Mac11-arm64 ] external/wpt/layout-instability/recent-input.html [ Failure Pass ]
crbug.com/1249176 [ Mac12-arm64 ] external/wpt/layout-instability/recent-input.html [ Failure Pass ]
@ -5165,9 +5154,6 @@ crbug.com/1249176 [ Mac12-arm64 ] virtual/scalefactor200/external/wpt/largest-co
crbug.com/1249176 [ Mac11-arm64 ] external/wpt/largest-contentful-paint/multiple-redirects-TAO.html [ Failure Pass ]
crbug.com/1249176 [ Mac12-arm64 ] external/wpt/largest-contentful-paint/multiple-redirects-TAO.html [ Failure Pass ]
crbug.com/1249176 [ Mac11-arm64 ] http/tests/devtools/elements/styles-2/nested-pseudo-elements.js [ Failure Pass ]
crbug.com/1463944 [ Mac11-arm64 ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Failure ]
crbug.com/1463944 [ Mac12-arm64 ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Failure Pass ]
crbug.com/1463944 [ Mac13-arm64 ] virtual/threaded/http/tests/devtools/tracing/timeline-paint/paint-profiler-update.js [ Failure Pass ]
# mac-arm CI 10-05-2021
crbug.com/1249176 [ Mac11-arm64 ] virtual/gpu-rasterization/images/directly-composited-image-orientation.html [ Failure Pass ]
@ -6914,7 +6900,6 @@ crbug.com/1475824 [ Mac10.15 ] virtual/keepalive-in-browser-migration/external/w
# Gardener 2023-08-31
crbug.com/1477701 [ Mac ] http/tests/devtools/tracing/timeline-layout/timeline-layout-with-invalidations.js [ Failure Pass ]
crbug.com/1477701 [ Mac ] http/tests/inspector-protocol/timeline/auction-worklet-network.js [ Failure Pass ]
crbug.com/1477701 [ Mac13-arm64 Release ] http/tests/devtools/tracing/frame-model-instrumentation.js [ Failure Pass ]
# Gardener 2023-09-05
# Flaky on Webkit Linux Leak

@ -1,4 +0,0 @@
layerTree: object
mainFrameId: number
paints: present

@ -1,31 +0,0 @@
// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import {TestRunner} from 'test_runner';
import {PerformanceTestRunner} from 'performance_test_runner';
import * as Timeline from 'devtools/panels/timeline/timeline.js';
(async function() {
await TestRunner.loadHTML('ABC');
await TestRunner.showPanel('timeline');
await TestRunner.evaluateInPagePromise(`
function doActions() {
return generateFrames(3);
}`);
Timeline.TimelinePanel.TimelinePanel.instance().captureLayersAndPicturesSetting.set(true);
await PerformanceTestRunner.invokeAsyncWithTimeline('doActions');
const frames = PerformanceTestRunner.timelineFrameModel().getFrames();
const lastFrame = frames[frames.length - 1];
if (lastFrame) {
TestRunner.addResult('layerTree: ' + typeof lastFrame.layerTree);
TestRunner.addResult('mainFrameId: ' + typeof lastFrame.mainFrameId);
const paints = lastFrame.layerTree.paints();
TestRunner.addResult('paints: ' + (paints && paints.length ? 'present' : 'absent'));
} else {
TestRunner.addResult('FAIL: there was no frame');
}
TestRunner.completeTest();
})();

@ -1,18 +0,0 @@
Tests that LayerTreeModel successfully imports layers from a trace.
#document
#document 0x0
#document
#document 0x0
#document 0x0
#document
#document
#document
#document
#document
div#a 200x200
div#b1 100x150
div#b2 110x140
div#c 90x100
div#b3 110x140

@ -1,47 +0,0 @@
// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import {TestRunner} from 'test_runner';
import {PerformanceTestRunner} from 'performance_test_runner';
import {LayersTestRunner} from 'layers_test_runner';
import * as Timeline from 'devtools/panels/timeline/timeline.js';
(async function() {
TestRunner.addResult(`Tests that LayerTreeModel successfully imports layers from a trace.\n`);
await TestRunner.showPanel('timeline');
await TestRunner.loadHTML(`
<div id="a" style="width: 200px; height: 200px" class="layer">
<div class="layer" id="b1" style="width: 150px; height: 100px"></div>
<div id="b2" class="layer" style="width: 140px; height: 110px">
<div id="c" class="layer" style="width: 100px; height: 90px"></div>
</div>
<div id="b3" class="layer" style="width: 140px; height: 110px"></div>
</div>
`);
await TestRunner.evaluateInPagePromise(`
function doActions()
{
var div = document.createElement("div");
div.id = "b4";
document.getElementById("a").appendChild(div);
// Make sure to force commit, otherwise some owner nodes will be missing.
var style = document.createElement("style");
style.textContent = ".layer { transform: translateZ(10px); opacity: 0.8; }";
document.head.appendChild(style);
return generateFrames(3);
}
`);
Timeline.TimelinePanel.TimelinePanel.instance()._captureLayersAndPicturesSetting.set(true);
await PerformanceTestRunner.invokeAsyncWithTimeline('doActions');
const frames = PerformanceTestRunner.timelineFrameModel().frames();
const lastFrame = frames[frames.length - 1];
const layerTreeModel = await lastFrame.layerTree.layerTreePromise();
LayersTestRunner.dumpLayerTree(undefined, layerTreeModel.contentRoot());
TestRunner.completeTest();
})();

@ -1,5 +0,0 @@
Tests that paint profiler is properly update when an event is selected in Flame Chart
Paint 0 log size: >0
Paint 1 log size: >0

@ -1,86 +0,0 @@
// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import {TestRunner} from 'test_runner';
import {PerformanceTestRunner} from 'performance_test_runner';
import * as Timeline from 'devtools/panels/timeline/timeline.js';
import * as TimelineModel from 'devtools/models/timeline_model/timeline_model.js';
(async function() {
TestRunner.addResult(`Tests that paint profiler is properly update when an event is selected in Flame Chart\n`);
await TestRunner.showPanel('timeline');
await TestRunner.loadHTML(`
<div id="square" style="width: 40px; height: 40px"></div>
`);
await TestRunner.addScriptTag('../../../resources/run-after-layout-and-paint.js');
await TestRunner.evaluateInPagePromise(`
function performActions()
{
var callback;
var promise = new Promise((fulfill) => callback = fulfill);
var square = document.getElementById("square");
step1();
function step1()
{
square.style.backgroundColor = "red";
runAfterLayoutAndPaint(step2);
}
function step2()
{
square.style.backgroundColor = "black";
runAfterLayoutAndPaint(callback);
}
return promise;
}
`);
const panel = Timeline.TimelinePanel.TimelinePanel.instance();
panel.captureLayersAndPicturesSetting.set(true);
panel.onModeChanged();
var paintEvents = [];
await PerformanceTestRunner.invokeAsyncWithTimeline('performActions');
var events = PerformanceTestRunner.mainTrackEvents();
for (var event of events) {
// When CompositeAfterPaint is enabled, a Paint trace event will be
// generated which encompasses the entire paint cycle for the page. That
// event will not correspond to any captured picture, and we just ignore it
// for the purpose of this test.
if (event.name === TimelineModel.TimelineModel.RecordType.Paint &&
TimelineModel.TimelineModel.EventOnTimelineData.forEvent(event).picture) {
paintEvents.push(event);
}
}
if (paintEvents.length < 2)
throw new Error('FAIL: Expect at least two paint events');
TestRunner.addSniffer(
panel.flameChart.detailsView, 'appendDetailsTabsForTraceEventAndShowDetails', onRecordDetailsReady, false);
panel.select(Timeline.TimelineSelection.TimelineSelection.fromTraceEvent(paintEvents[0]));
function onRecordDetailsReady() {
var updateCount = 0;
panel.flameChart.detailsView.tabbedPane.selectTab(Timeline.TimelineDetailsView.Tab.PaintProfiler, true);
var paintProfilerView = panel.flameChart.detailsView.lazyPaintProfilerView.paintProfilerView;
TestRunner.addSniffer(paintProfilerView, 'update', onPaintProfilerUpdate, true);
function onPaintProfilerUpdate() {
// No snapshot, not a real update yet -- wait for another update!
if (!paintProfilerView.snapshot)
return;
var logSize = paintProfilerView.log && paintProfilerView.log.length ? '>0' : '0';
TestRunner.addResult('Paint ' + updateCount + ' log size: ' + logSize);
if (updateCount++)
TestRunner.completeTest();
else
panel.select(
Timeline.TimelineSelection.TimelineSelection.fromTraceEvent(paintEvents[1]), Timeline.TimelineDetailsView.Tab.PaintProfiler);
}
}
})();