Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(86)

Unified Diff: third_party/WebKit/LayoutTests/external/wpt/html/dom/self-origin.sub.html

Issue 2695813009: Import wpt@503f5b5f78ec4e87d144f78609f363f0ed0ea8db (Closed)
Patch Set: Skip some tests Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/external/wpt/html/dom/self-origin.sub.html
diff --git a/third_party/WebKit/LayoutTests/external/wpt/html/dom/self-origin.sub.html b/third_party/WebKit/LayoutTests/external/wpt/html/dom/self-origin.sub.html
new file mode 100644
index 0000000000000000000000000000000000000000..4143a4a20ab4459a73dca5700cae2275c53293ee
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/external/wpt/html/dom/self-origin.sub.html
@@ -0,0 +1,93 @@
+<!DOCTYPE HTML>
+<meta charset=utf-8>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div id=log></div>
+<iframe></iframe>
+<iframe id="blob-test"></iframe> <!-- will get blob: URI -->
+<iframe src="javascript:'javascript'"></iframe>
+<iframe srcdoc="srcdoc"></iframe>
+<!-- Use the non-default HTTP port so we can make sure it gets included in
+ self.origin -->
+<iframe src="http://{{domains[www1]}}:{{ports[http][1]}}{{location[path]}}/../resources/self-origin-subframe.html"></iframe>
+<!-- Using the punycode version on purpose, we expect to get back the IDNA
+ version in self.origin -->
+<iframe src="http://xn--lve-6lad.{{domains[]}}:{{ports[http][1]}}{{location[path]}}/../resources/self-origin-subframe.html"></iframe>
+<iframe src="resources/self-origin-subframe.html" sandbox="allow-scripts"></iframe>
+<script type="application/javascript">
+test(function() {
+ var blob = new Blob(['blob']);
+ var url = URL.createObjectURL(blob);
+ document.getElementById("blob-test").src = url;
+}, "Assigning blob url");
+
+/* Each message test is a four things: window to send message to, message to
+ send, expected response, async test to use. */
+var messageTests = [
+ [ frames[4], "getOrigin", "http://{{domains[www1]}}:{{ports[http][1]}}",
+ async_test("Should have the right origin for cross-origin subframe") ],
+ [ frames[4], "setDomainAndGetOrigin", "http://{{domains[www1]}}:{{ports[http][1]}}",
+ async_test("Should have the right origin for cross-origin subframe after setting document.domain") ],
+ [ frames[5], "getOrigin", "http://élève.{{domains[]}}:{{ports[http][1]}}",
+ async_test("Should have the right origin for IDN subframe") ],
+ [ frames[5], "setDomainAndGetOrigin", "http://élève.{{domains[]}}:{{ports[http][1]}}",
+ async_test("Should have the right origin for IDN subframe after setting document.domain") ],
+ [ frames[6], "getOrigin", "null",
+ async_test("Should have the right origin for sandboxed iframe") ],
+];
+
+var curTest = 0;
+function nextMessageTest() {
+ if (curTest == messageTests.length) {
+ return;
+ }
+
+ var testData = messageTests[curTest];
+ testData[0].postMessage(testData[1], "*");
+}
+
+window.onmessage = function(e) {
+ var testData = messageTests[curTest++];
+ testData[3].step_func(function() {
+ assert_equals(e.data, testData[2])
+ });
+ testData[3].done();
+ nextMessageTest();
+}
+
+addEventListener("load", nextMessageTest);
+
+test(function() {
+ assert_equals(self.origin, "http://{{location[host]}}");
+}, "We should have the right origin for our page");
+
+var t1 = async_test("about:blank subframe origins");
+addEventListener("load", t1.step_func_done(function() {
+ assert_equals(frames[0].location.origin, "null",
+ "Should have the right location origin for about:blank iframe");
+ assert_equals(frames[0].origin, "http://{{location[host]}}",
+ "Should have the right origin for about:blank iframe");
+}));
+
+var t2 = async_test("blob: subframe origins");
+addEventListener("load", t2.step_func_done(function() {
+ assert_equals(frames[1].location.origin, "http://{{location[host]}}",
+ "Should have the right location origin for blob: iframe");
+ assert_equals(frames[1].origin, "http://{{location[host]}}",
+ "Should have the right origin for blob: iframe");
+}));
+
+var t3 = async_test("javascript: subframe origins");
+addEventListener("load", t3.step_func_done(function() {
+ assert_equals(frames[2].origin, "http://{{location[host]}}",
+ "Should have the right origin for javascript: iframe");
+}));
+
+var t4 = async_test("srcdoc subframe origins");
+addEventListener("load", t4.step_func_done(function() {
+ assert_equals(frames[3].location.origin, "null",
+ "Should have the right location origin for srcdoc iframe");
+ assert_equals(frames[3].origin, "http://{{location[host]}}",
+ "Should have the right origin for srcdoc iframe");
+}));
+</script>

Powered by Google App Engine
This is Rietveld 408576698