Index: third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name_cross_origin.html |
diff --git a/third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name_cross_origin.html b/third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name_cross_origin.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e28fec2df8834e6b3acbe76a447b6093e798c06d |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/imported/web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name_cross_origin.html |
@@ -0,0 +1,41 @@ |
+<!doctype html> |
+<title>Restoring window.name on cross-origin history traversal</title> |
+<script src="../../../../../../resources/testharness.js"></script> |
+<script src="../../../../../../resources/testharnessreport.js"></script> |
+<div id="log"></div> |
+<pre id="step_log"></pre> |
+<iframe id="test"></iframe> |
+<script> |
+ |
+var t = async_test(undefined, {timeout:10000}); |
+var f = document.getElementById("test"); |
+var l = document.getElementById("step_log"); |
+var navigated = false; |
+ |
+log = function(t) {l.textContent += ("\n" + t)} |
+ |
+var steps = [ |
+ function() {f.src = "browsing_context_name-1.html"}, |
+ function() { |
+ var navigated = true; |
+ assert_equals(f.contentWindow.name, "test", "Initial load"); |
+ setTimeout(next, 0); |
+ }, |
+ function() {f.src = f.src.replace("http://", "http://www.").replace("browsing_context_name-1", "browsing_context_name-2");}, |
+ function() { |
+ setTimeout(next, 0); |
+ }, |
+ function() {history.back(); setTimeout(next, 500)}, |
+ function() { |
+ assert_equals(f.contentWindow.name, "test", "After navigation"); |
+ t.done(); |
+ } |
+].map(function(x) {return t.step_func(function() {log("Step " + step); x()})}); |
+ |
+var step = 0; |
+next = t.step_func(function() {steps[step++]()}); |
+ |
+f.onload=next; |
+ |
+onload = setTimeout(next, 0); |
+</script> |