зеркало из https://github.com/mozilla/gecko-dev.git
101 строка
2.5 KiB
HTML
101 строка
2.5 KiB
HTML
<!--
|
|
Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/
|
|
-->
|
|
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
|
<script type="application/javascript">
|
|
|
|
var timingParams = [
|
|
"navigationStart",
|
|
"unloadEventStart",
|
|
"unloadEventEnd",
|
|
"redirectStart",
|
|
"redirectEnd",
|
|
"fetchStart",
|
|
"domainLookupStart",
|
|
"domainLookupEnd",
|
|
"connectStart",
|
|
"connectEnd",
|
|
"requestStart",
|
|
"responseStart",
|
|
"responseEnd",
|
|
"domLoading",
|
|
"domInteractive",
|
|
"domContentLoadedEventStart",
|
|
"domContentLoadedEventEnd",
|
|
"domComplete",
|
|
"loadEventStart",
|
|
"loadEventEnd"
|
|
];
|
|
|
|
function is(received, expected, message) {
|
|
window.opener.is(received, expected, message);
|
|
}
|
|
|
|
function isnot(received, notExpected, message) {
|
|
window.opener.isnot(received, notExpected, message);
|
|
}
|
|
|
|
window.onload = function() {
|
|
if (location.href.indexOf("_blank") != -1) {
|
|
test_blank();
|
|
return;
|
|
}
|
|
|
|
if (location.href.indexOf("_self") != -1) {
|
|
test_self();
|
|
return;
|
|
}
|
|
}
|
|
|
|
function checkTimingValues(expectedValues) {
|
|
for (var name of timingParams) {
|
|
if (name in expectedValues) {
|
|
is(window.performance.timing[name], expectedValues[name], name+" should be "+expectedValues[name]);
|
|
} else {
|
|
isnot(window.performance.timing[name], 0, name+" should not be 0");
|
|
}
|
|
}
|
|
}
|
|
|
|
function test_blank() {
|
|
// We set a timeout to make sure this is run after onload is called
|
|
setTimeout(function(){
|
|
// When loading the page in _blank, unloadEvent and redirect timestamps should be 0
|
|
var expectedValues = { "unloadEventStart": 0, "unloadEventEnd": 0, "redirectStart": 0, "redirectEnd": 0 };
|
|
checkTimingValues(expectedValues);
|
|
|
|
// change location in order to test a _self load
|
|
window.location.href = "navigation_timing.html?x=1#_self";
|
|
}, 0);
|
|
}
|
|
|
|
function test_self() {
|
|
// We set a timeout to make sure this is run after onload is called
|
|
setTimeout(function(){
|
|
// When simply loading in _self, redirect timestamps should be 0 (unloadEventStart/End != 0)
|
|
var expectedValues = { "redirectStart": 0, "redirectEnd": 0 };
|
|
checkTimingValues(expectedValues);
|
|
|
|
window.opener.finishTests();
|
|
}, 0);
|
|
}
|
|
|
|
</script>
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<a target="_blank"
|
|
href="https://bugzilla.mozilla.org/show_bug.cgi?id=1099092"
|
|
title="Navigation timing">
|
|
Bug #1099092 - Navigation Timing has incorrect values when page is load via link with target=_blank attribute
|
|
</a>
|
|
<p id="display"></p>
|
|
</body>
|
|
</html>
|