Bug 1443027 - Add two new tests for merging behaviour. r=mstange

MozReview-Commit-ID: G5vgtSCdRZP

--HG--
extra : rebase_source : 2775e9a67e8262144f572d369873eb133dfbc6e5
This commit is contained in:
Matt Woodrow 2018-03-23 12:20:40 +13:00
parent 2d4435d3af
commit edb36524ee
8 changed files with 400 additions and 1 deletions

View File

@ -0,0 +1,20 @@
<!DOCTYPE HTML>
<html class="reftest-wait">
<body>
<div id="first" style="position:absolute; width: 200px; height: 200px; background-color:blue; z-index: 1"></div>
<div style="position:absolute; left: 400px; width: 200px; height: 200px; background-color:green; z-index: 2"></div>
<div id="overlay" style="position:absolute; top: 100px; width: 600px; height: 200px; background-color:orange; z-index: 10"></div>
</body>
<script>
function doTest2() {
document.getElementById("overlay").style.zIndex= 11;
document.documentElement.removeAttribute('class');
}
function doTest() {
document.getElementById("first").style.zIndex = 3;
setTimeout(doTest2, 1000);
}
window.addEventListener("MozReftestInvalidate", doTest);
</script>
</html>

View File

@ -527,4 +527,5 @@ load 1429962.html
pref(dom.webcomponents.shadowdom.enabled,true) load 1439016.html
load 1442506.html
load 1437155.html
load 1443027-1.html
load 1448841-1.html

View File

@ -0,0 +1,93 @@
<!DOCTYPE html>
<html lang="en" class="reftest-wait"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
<title>Bug 1443027 - Test merging across multiple paints</title>
<style>
body { opacity: 0.9; }
div {
position: absolute;
}
#A {
left: 250px;
top: 50px;
width: 100px;
height: 100px;
background-color: red;
}
#B {
left: 200px;
top: 0px;
width: 100px;
height: 100px;
background-color: yellow;
}
#C {
left: 0px;
top: 0px;
width: 100px;
height: 100px;
background-color: green;
}
#D {
left: 80px;
top: 20px;
width: 140px;
height: 100px;
background-color: blue;
}
</style>
</head>
<body>
<div id="A"></div>
<div id="B"></div>
<div id="C"></div>
<div id="D"></div>
<script>
var A = document.getElementById("A");
var B = document.getElementById("B");
var C = document.getElementById("C");
var D = document.getElementById("D");
A.style.visibility = "hidden";
B.style.visibility = "hidden";
C.style.visibility = "hidden";
D.style.visibility = "hidden";
window.addEventListener("MozReftestInvalidate", step1);
function step1() {
C.style.visibility = "visible";
C.style.transform = "translatez(1px)";
D.style.visibility = "visible";
D.style.transform = "translatez(1px)";
window.requestAnimationFrame(function() { window.requestAnimationFrame(step2); });
}
function step2() {
A.style.visibility = "visible";
A.style.transform = "translatez(1px)";
B.style.visibility = "visible";
B.style.transform = "translatez(1px)";
window.requestAnimationFrame(step3);
}
function step3() {
D.style.visibility = "hidden";
D.style.transform = "";
document.documentElement.removeAttribute('class');
}
</script>
</body></html>

View File

@ -0,0 +1,93 @@
<!DOCTYPE html>
<html lang="en" class="reftest-wait"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
<title>Bug 1443027 - Test merging across multiple paints</title>
<style>
body { opacity: 0.9; }
div {
position: absolute;
}
#A {
left: 250px;
top: 50px;
width: 100px;
height: 100px;
background-color: red;
}
#B {
left: 200px;
top: 0px;
width: 100px;
height: 100px;
background-color: yellow;
}
#C {
left: 0px;
top: 0px;
width: 100px;
height: 100px;
background-color: green;
}
#D {
left: 80px;
top: 20px;
width: 140px;
height: 100px;
background-color: blue;
}
</style>
</head>
<body>
<div id="A"></div>
<div id="B"></div>
<div id="C"></div>
<div id="D"></div>
<script>
var A = document.getElementById("A");
var B = document.getElementById("B");
var C = document.getElementById("C");
var D = document.getElementById("D");
A.style.visibility = "hidden";
B.style.visibility = "hidden";
C.style.visibility = "hidden";
D.style.visibility = "hidden";
window.addEventListener("MozReftestInvalidate", step1);
function step1() {
A.style.visibility = "visible";
A.style.transform = "translatez(1px)";
B.style.visibility = "visible";
B.style.transform = "translatez(1px)";
D.style.visibility = "visible";
D.style.transform = "translatez(1px)";
window.requestAnimationFrame(function() { window.requestAnimationFrame(step2); });
}
function step2() {
C.style.visibility = "visible";
C.style.transform = "translatez(1px)";
window.requestAnimationFrame(step3);
}
function step3() {
D.style.visibility = "hidden";
D.style.transform = "";
document.documentElement.removeAttribute('class');
}
</script>
</body></html>

View File

@ -0,0 +1,54 @@
<!DOCTYPE html>
<html lang="en"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
<title>Bug 1443027 - Test merging across multiple paints</title>
<style>
body { opacity: 0.9; }
div {
position: absolute;
transform: translatez(1px);
}
#A {
left: 250px;
top: 50px;
width: 100px;
height: 100px;
background-color: red;
}
#B {
left: 200px;
top: 0px;
width: 100px;
height: 100px;
background-color: yellow;
}
#C {
left: 0px;
top: 0px;
width: 100px;
height: 100px;
background-color: green;
}
#D {
left: 80px;
top: 20px;
width: 140px;
height: 100px;
background-color: blue;
}
</style>
</head>
<body>
<div id="A"></div>
<div id="B"></div>
<div id="D"></div>
<div id="C"></div>
</body></html>

View File

@ -0,0 +1,91 @@
<!DOCTYPE html>
<html lang="en" class="reftest-wait"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
<title>Bug 1443027 - Test merging across multiple paints</title>
<style>
body { opacity: 0.9; }
div {
position: absolute;
}
#A {
left: 250px;
top: 50px;
width: 100px;
height: 100px;
background-color: red;
}
#B {
left: 200px;
top: 0px;
width: 100px;
height: 100px;
background-color: yellow;
}
#C {
left: 0px;
top: 0px;
width: 100px;
height: 100px;
background-color: green;
}
#D {
left: 80px;
top: 20px;
width: 140px;
height: 100px;
background-color: blue;
}
</style>
</head>
<body>
<div id="A"></div>
<div id="B"></div>
<div id="D"></div>
<div id="C"></div>
<script>
var A = document.getElementById("A");
var B = document.getElementById("B");
var C = document.getElementById("C");
var D = document.getElementById("D");
A.style.visibility = "hidden";
B.style.visibility = "hidden";
C.style.visibility = "hidden";
D.style.visibility = "hidden";
window.addEventListener("MozReftestInvalidate", step1);
function step1() {
A.style.visibility = "visible";
A.style.transform = "translatez(1px)";
window.requestAnimationFrame(function() { window.requestAnimationFrame(step2); });
}
function step2() {
C.style.visibility = "visible";
C.style.transform = "translatez(1px)";
D.style.visibility = "visible";
D.style.transform = "translatez(1px)";
window.requestAnimationFrame(step3);
}
function step3() {
B.style.visibility = "visible";
B.style.transform = "translatez(1px)";
document.documentElement.removeAttribute('class');
}
</script>
</body></html>

View File

@ -0,0 +1,45 @@
<!DOCTYPE html>
<html lang="en"><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
<title>Bug 1443027 - Test merging across multiple paints</title>
<style>
body { opacity: 0.9; }
div {
position: absolute;
transform: translatez(1px);
}
#A {
left: 250px;
top: 50px;
width: 100px;
height: 100px;
background-color: red;
}
#B {
left: 200px;
top: 0px;
width: 100px;
height: 100px;
background-color: yellow;
}
#C {
left: 0px;
top: 0px;
width: 100px;
height: 100px;
background-color: green;
}
</style>
</head>
<body>
<div id="A"></div>
<div id="B"></div>
<div id="C"></div>
</body></html>

View File

@ -23,4 +23,6 @@ needs-focus == 1429027-1.html 1429027-1-ref.html
== 1436189-1.html 1436189-1-ref.html
skip-if(!asyncPan) == 1437374-1.html 1437374-1-ref.html
== 1439809-1.html 1439809-1-ref.html
== 1443027-1.html 1443027-ref.html
== 1443027-2.html 1443027-ref.html
== 1443027-3.html 1443027-3-ref.html