Fix some async repaint tests

Some async layout tests use waitUntilDone() and notifyDone() by
themselves, without setting window.testIsAsync to true.

This may be either unnecessary or incorrect, depending on which of the
test's notifyDone() and text-based-repaint.js's notifyDone() executes
first. If the latter executes first, the test may finish before it's
done causing what the test want to test not fully executed.

BUG=381242

Review URL: https://codereview.chromium.org/316193003

git-svn-id: svn://svn.chromium.org/blink/trunk@175599 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 2d8be25d
......@@ -1045,6 +1045,11 @@ crbug.com/366442 svg/custom/masking-clipping-hidpi.svg [ Pass Failure ]
crbug.com/375565 [ Mac ] fast/repaint/caret-with-transformation.html [ Pass Failure ]
crbug.com/381242 fast/repaint/bugzilla-6473.html [ NeedsRebaseline ]
crbug.com/381242 svg/custom/use-detach.svg [ NeedsRebaseline ]
crbug.com/381242 svg/custom/mask-invalidation.svg [ NeedsRebaseline ]
crbug.com/381242 svg/custom/resource-client-removal.svg [ NeedsRebaseline ]
crbug.com/375567 web-animations-api/w3c/simple-keyframes.html [ Pass Failure ]
crbug.com/376597 web-animations-api/player.html [ Pass Failure ]
......
......@@ -5,6 +5,15 @@
(bounds 800.00 600.00)
(contentsOpaque 1)
(drawsContent 1)
(repaint rects
(rect 8.00 156.00 784.00 32.00)
(rect 8.00 156.00 784.00 32.00)
(rect 8.00 152.00 784.00 20.00)
(rect 8.00 136.00 784.00 52.00)
(rect 8.00 136.00 784.00 20.00)
(rect 8.00 136.00 784.00 20.00)
(rect 0.00 172.00 800.00 24.00)
)
)
)
)
......
......@@ -4,20 +4,9 @@
<head>
<script src="resources/text-based-repaint.js"></script>
<script type="text/javascript">
function finish()
{
document.getElementById('allcontent').style.overflow = '';
if (window.testRunner)
testRunner.notifyDone();
}
function repaintTest()
{
if (window.testRunner)
testRunner.waitUntilDone();
window.setTimeout(finish, 1);
document.getElementById('allcontent').style.overflow = '';
}
</script>
</head>
......
<!DOCTYPE html>
<script src="resources/text-based-repaint.js"></script>
<script src="../../resources/run-after-display.js"></script>
<script>
if (window.testRunner)
window.jsTestIsAsync = true;
function repaintTest()
{
document.getElementById('node').remove();
if (window.testRunner) {
runAfterDisplay(function() {
testRunner.notifyDone();
});
}
}
onload = runRepaintTest;
</script>
......
<!DOCTYPE html>
<script src="resources/text-based-repaint.js"></script>
<script src="../../resources/run-after-display.js"></script>
<script>
if (window.testRunner)
window.jsTestIsAsync = true;
function repaintTest()
{
document.getElementById('remove').style.display='none';
if (window.testRunner) {
runAfterDisplay(function() {
testRunner.notifyDone();
});
}
}
onload = runRepaintTest;
</script>
......
<!DOCTYPE html>
<script src="resources/text-based-repaint.js"></script>
<script src="../../resources/run-after-display.js"></script>
<script>
if (window.testRunner)
window.jsTestIsAsync = true;
function repaintTest()
{
document.getElementById('node').remove();
if (window.testRunner) {
runAfterDisplay(function() {
testRunner.notifyDone();
});
}
}
onload = runRepaintTest;
</script>
......
<!DOCTYPE html>
<script src="resources/text-based-repaint.js"></script>
<script src="../../resources/run-after-display.js"></script>
<script>
if (window.testRunner)
window.jsTestIsAsync = true;
function repaintTest()
{
document.getElementById('node').remove();
if (window.testRunner) {
runAfterDisplay(function() {
testRunner.notifyDone();
});
}
}
onload = runRepaintTest;
</script>
......
......@@ -29,15 +29,12 @@
frame.scrollBy(100, 100);
</script>
<script>
window.testIsAsync = true;
function repaintTest()
{
if (window.testRunner) {
testRunner.waitUntilDone();
frame.onscroll = function() {
if (window.testRunner)
testRunner.notifyDone();
finishRepaintTest();
};
}
frame.scrollBy(-90, -90);
}
</script>
......
......@@ -48,6 +48,9 @@ function forceStyleRecalc()
function finishRepaintTest()
{
if (!window.testRunner || !window.internals)
return;
// Force a style recalc.
forceStyleRecalc();
......
......@@ -10,12 +10,32 @@
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 218.00 94.00 28.00 28.00)
(rect 210.00 57.00 44.00 65.00)
(rect 210.00 57.00 44.00 65.00)
(rect 210.00 57.00 44.00 65.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
(rect 210.00 57.00 44.00 39.00)
)
)
)
......
......@@ -6,10 +6,10 @@
(contentsOpaque 1)
(drawsContent 1)
(repaint rects
(rect 200.00 100.00 460.00 316.00)
(rect 200.00 100.00 403.00 249.00)
(rect 200.00 100.00 403.00 249.00)
(rect 200.00 100.00 403.00 249.00)
(rect 100.00 100.00 460.00 316.00)
(rect 100.00 100.00 403.00 249.00)
(rect 100.00 100.00 403.00 249.00)
(rect 100.00 100.00 403.00 249.00)
(rect 50.00 50.00 460.00 316.00)
(rect 50.00 50.00 453.00 299.00)
(rect 50.00 50.00 453.00 299.00)
......
......@@ -19,13 +19,13 @@
style="fill:red; stroke:blue;"/>
</g>
<script>
window.testIsAsync = true;
function repaintTest() {
if (window.eventSender) {
testRunner.waitUntilDone();
eventSender.mouseMoveTo(100, 100);
eventSender.mouseUp();
eventSender.mouseDown();
setTimeout("testRunner.notifyDone()", 0);
setTimeout(finishRepaintTest, 0);
}
}
</script>
......
......@@ -2,6 +2,7 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" onload="runRepaintAndPixelTest()">
<script xlink:href="../../fast/repaint/resources/text-based-repaint.js"/>
<script>
window.testIsAsync = true;
function draw(x, y) {
var maskrect = document.getElementById("maskRect");
maskrect.setAttribute("transform", "translate(" + x + "," + y + ")");
......@@ -22,14 +23,10 @@ function draw(x, y) {
}
function repaintTest() {
if (window.testRunner)
testRunner.waitUntilDone();
draw(150, 50);
requestAnimationFrame(function() {
draw(50, 50);
if (window.testRunner)
testRunner.notifyDone();
finishRepaintTest();
});
}
......
......@@ -5,6 +5,63 @@
(bounds 800.00 600.00)
(contentsOpaque 1)
(drawsContent 1)
(repaint rects
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
(rect 0.00 0.00 100.00 100.00)
)
)
)
)
......
......@@ -2,11 +2,10 @@
<script xlink:href="../../fast/repaint/resources/text-based-repaint.js"/>
<script>
<![CDATA[
window.testIsAsync = true;
function repaintTest() {
container = document.getElementById("inneruse");
stop = document.getElementById("offset");
if (window.testRunner)
testRunner.waitUntilDone();
setTimeout(offset, 0);
}
var turns = 5;
......@@ -16,8 +15,8 @@ function offset(){
turns--;
if (turns > 0)
window.setTimeout("offset()", 0)
else if (window.testRunner)
testRunner.notifyDone();
else
finishRepaintTest();
}
]]>
</script>
......
......@@ -4,12 +4,10 @@
<script xlink:href="../../fast/repaint/resources/text-based-repaint.js"/>
<script type="text/javascript">
<![CDATA[
window.testIsAsync = true;
function repaintTest() {
var elem = document.getElementById('use');
elem.setAttributeNS(null,'display','inline');
if (window.testRunner)
testRunner.waitUntilDone();
window.setTimeout("step2()", 0);
}
function step2() {
......@@ -20,8 +18,7 @@
function step3() {
var elem = document.getElementById('use');
elem.setAttributeNS(null,'display','inline');
if (window.testRunner)
testRunner.notifyDone();
finishRepaintTest();
}
]]>
</script>
......
......@@ -11,15 +11,10 @@
var greenSquare = "data:image/jpg;base64,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BQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQACEQMRAD8ApUUUVynGFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAf//Z";
var image = document.getElementById("image");
if (window.testRunner) {
testRunner.dumpAsTextWithPixelResults();
testRunner.waitUntilDone();
}
window.testIsAsync = true;
function repaintTest() {
image.onload = function() {
if (window.testRunner)
testRunner.notifyDone();
finishRepaintTest();
};
image.setAttributeNS('http://www.w3.org/1999/xlink', 'href', greenSquare);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment