| Index: third_party/WebKit/LayoutTests/external/wpt/navigation-timing/test_timing_reload.html
|
| diff --git a/third_party/WebKit/LayoutTests/external/wpt/navigation-timing/test_timing_reload.html b/third_party/WebKit/LayoutTests/external/wpt/navigation-timing/test_timing_reload.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..57d2dcebe6bcfd0e4afe502b4d0c768f2a326611
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/external/wpt/navigation-timing/test_timing_reload.html
|
| @@ -0,0 +1,90 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| + <head>
|
| + <meta charset="utf-8" />
|
| + <title>window.performance.timing attributes after a reloaded navigation</title>
|
| + <link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
| + <link rel="help" href="http://www.w3.org/TR/navigation-timing/#sec-navigation-timing-interface"/>
|
| + <script src="/resources/testharness.js"></script>
|
| + <script src="/resources/testharnessreport.js"></script>
|
| + <script src="resources/webperftestharness.js"></script>
|
| + <script>
|
| + setup({explicit_done: true});
|
| +
|
| + // explicitly test the namespace before we start testing
|
| + test_namespace('navigation');
|
| +
|
| + var reload_frame;
|
| + var initial_timing;
|
| +
|
| + function onload_test()
|
| + {
|
| + reload_frame = document.getElementById("frameContext");
|
| +
|
| + if (reload_frame.contentWindow.performance === undefined)
|
| + {
|
| + // avoid script errors
|
| + done();
|
| + return;
|
| + }
|
| +
|
| + reload_frame.onload = do_test;
|
| +
|
| + // save frame's initial timings
|
| + initial_timing = {};
|
| + var timing = reload_frame.contentWindow.performance.timing;
|
| +
|
| + for (var i = 0; i < timingAttributes.length; ++i)
|
| + {
|
| + var property = timingAttributes[i];
|
| + initial_timing[property] = timing[property];
|
| + }
|
| +
|
| + setTimeout("reload_the_frame();", 100);
|
| + }
|
| +
|
| + function reload_the_frame()
|
| + {
|
| + reload_frame.contentWindow.location.reload(true);
|
| + }
|
| +
|
| + function do_test()
|
| + {
|
| + reload_frame.onload = "";
|
| +
|
| + // ensure the frame reloaded
|
| + test_equals(reload_frame.contentWindow.performance.navigation.type,
|
| + performanceNamespace.navigation.TYPE_RELOAD,
|
| + "window.performance.navigation.type == TYPE_RELOAD", {help:"http://www.w3.org/TR/navigation-timing/#sec-navigation-info-interface"});
|
| +
|
| + // ensure reload timings changed
|
| + var timing = reload_frame.contentWindow.performance.timing;
|
| + for (var i = 0; i < timingAttributes.length; ++i)
|
| + {
|
| + var property = timingAttributes[i];
|
| +
|
| + // ignore any timings that were zero initially
|
| + if (initial_timing[property] !== 0)
|
| + {
|
| + test_not_equals(timing[property], initial_timing[property],
|
| + property + " is different after the reload.");
|
| + }
|
| + }
|
| +
|
| + done();
|
| + }
|
| + </script>
|
| + </head>
|
| + <body onload="onload_test();">
|
| + <h1>Description</h1>
|
| + <p>This test validates that the window.performance.timing attributes change when a page is reloaded.</p>
|
| +
|
| + <p>This page should be loaded with a green background frame below. The frame will be automatically reloaded
|
| + and then verified that the window.performance.timing attributes have been updated to the new reloaded navigation timings.</p>
|
| +
|
| + <div id="log"></div>
|
| + <br />
|
| + <iframe id="frameContext" src="resources/blank_page_green.html" style="width: 250px; height: 250px;"></iframe>
|
| +
|
| + </body>
|
| +</html>
|
|
|