Diagnostic instrumentation for bug 536603.

This commit is contained in:
Zack Weinberg 2012-09-23 11:18:10 -04:00
Родитель 0b50e5e911
Коммит 0e4d900c9d
3 изменённых файлов: 102 добавлений и 51 удалений

Просмотреть файл

@ -61,31 +61,45 @@ p + p { left: 22px }
</style>
<!-- link directives -->
<link rel="stylesheet" href="ccd.sjs?IA1lq">
<link rel="stylesheet" href="ccd.sjs?IA2lq">
<link rel="stylesheet" href="ccd.sjs?IA3lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB1lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB2lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB3lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC1lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC2lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC3lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID1lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID2lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID3lq">
<link rel="stylesheet" href="ccd.sjs?JA1lq">
<link rel="stylesheet" href="ccd.sjs?JA2lq">
<link rel="stylesheet" href="ccd.sjs?JA3lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB1lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB2lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB3lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC1lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC2lq">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC3lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD1lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD2lq">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD3lq">
<link rel="stylesheet" data-href="ccd.sjs?IA1lq">
<link rel="stylesheet" data-href="ccd.sjs?IA2lq">
<link rel="stylesheet" data-href="ccd.sjs?IA3lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB1lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB2lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB3lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC1lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC2lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC3lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID1lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID2lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID3lq">
<link rel="stylesheet" data-href="ccd.sjs?JA1lq">
<link rel="stylesheet" data-href="ccd.sjs?JA2lq">
<link rel="stylesheet" data-href="ccd.sjs?JA3lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB1lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB2lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB3lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC1lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC2lq">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC3lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD1lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD2lq">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD3lq">
<script>
// attach onload and onerror handlers to every link tag, then activate
// them. see audit logic in test_css_cross_domain.html
function setCompleted() {
this.dataset.completed = true;
}
var links = document.getElementsByTagName("link");
for (var i = 0; i < links.length; i++) {
links[i].dataset.completed = false;
links[i].addEventListener("load", setCompleted);
links[i].addEventListener("error", setCompleted);
links[i].href = links[i].dataset.href;
}
</script>
</head><body>
<div></div>
<div></div>
@ -121,4 +135,5 @@ p + p { left: 22px }
<div><p id="JD1i"></p><p id="JD1l"></p></div>
<div><p id="JD2i"></p><p id="JD2l"></p></div>
<div><p id="JD3i"></p><p id="JD3l"></p></div>
</body></html>

Просмотреть файл

@ -60,31 +60,45 @@ p + p { left: 22px }
</style>
<!-- link directives -->
<link rel="stylesheet" href="ccd.sjs?IA1ls">
<link rel="stylesheet" href="ccd.sjs?IA2ls">
<link rel="stylesheet" href="ccd.sjs?IA3ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB1ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB2ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?IB3ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC1ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC2ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC3ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID1ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID2ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID3ls">
<link rel="stylesheet" href="ccd.sjs?JA1ls">
<link rel="stylesheet" href="ccd.sjs?JA2ls">
<link rel="stylesheet" href="ccd.sjs?JA3ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB1ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB2ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/ccd.sjs?JB3ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC1ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC2ls">
<link rel="stylesheet" href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC3ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD1ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD2ls">
<link rel="stylesheet" href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD3ls">
<link rel="stylesheet" data-href="ccd.sjs?IA1ls">
<link rel="stylesheet" data-href="ccd.sjs?IA2ls">
<link rel="stylesheet" data-href="ccd.sjs?IA3ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB1ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB2ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?IB3ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC1ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC2ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?IC3ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID1ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID2ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?ccd.sjs?ID3ls">
<link rel="stylesheet" data-href="ccd.sjs?JA1ls">
<link rel="stylesheet" data-href="ccd.sjs?JA2ls">
<link rel="stylesheet" data-href="ccd.sjs?JA3ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB1ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB2ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/ccd.sjs?JB3ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC1ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC2ls">
<link rel="stylesheet" data-href="redirect.sjs?http://example.org/tests/layout/style/test/ccd.sjs?JC3ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD1ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD2ls">
<link rel="stylesheet" data-href="http://example.org/tests/layout/style/test/redirect.sjs?http://mochi.test:8888/tests/layout/style/test/ccd.sjs?JD3ls">
<script>
// attach onload and onerror handlers to every link tag, then activate
// them. see audit logic in test_css_cross_domain.html
function setCompleted() {
this.dataset.completed = true;
}
var links = document.getElementsByTagName("link");
for (var i = 0; i < links.length; i++) {
links[i].dataset.completed = false;
links[i].addEventListener("load", setCompleted);
links[i].addEventListener("error", setCompleted);
links[i].href = links[i].dataset.href;
}
</script>
</head><body>
<div></div>
<div></div>

Просмотреть файл

@ -79,8 +79,18 @@
/** Test for Bug 524223 **/
function check_iframe(ifr) {
var doc = ifr.contentDocument;
var i;
// Check that all links have in fact either loaded or errored.
// Doesn't seem to be possible to do this for @import, but this is
// just a diagnostic, anyway. See corresponding code in ccd-*.html.
var links = doc.getElementsByTagName("link");
for (i = 0; i < links.length; i++) {
ok(links[i].dataset.completed, ifr.id + " " + links[i].href + " loaded");
}
var cases = doc.getElementsByTagName("p");
for (var i = 0; i < cases.length; i++) {
for (i = 0; i < cases.length; i++) {
var color = doc.defaultView.getComputedStyle(cases[i], "")
.getPropertyValue("background-color");
@ -88,10 +98,22 @@ function check_iframe(ifr) {
}
}
var quirks = document.getElementById("quirks");
var standards = document.getElementById("standards");
var quirks_loaded = false;
var standards_loaded = false;
SimpleTest.waitForExplicitFinish();
quirks.onload = function() { quirks_loaded = true; }
standards.onload = function() { standards_loaded = true; }
window.onload = function() {
check_iframe(document.getElementById("quirks"));
check_iframe(document.getElementById("standards"));
ok(quirks_loaded, "quirks frame loaded");
ok(standards_loaded, "standards frame loaded");
check_iframe(quirks);
check_iframe(standards);
SimpleTest.finish();
};
</script>