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

Side by Side Diff: LayoutTests/http/tests/security/document-origin.html

Issue 758913002: Implement the 'document.origin' accessor. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Moar assertions. Created 6 years 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 unified diff | Download patch
« no previous file with comments | « no previous file | LayoutTests/http/tests/security/document-origin-domain.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>document.origin</title>
5 <script src="/resources/testharness.js"></script>
6 <script src="/resources/testharnessreport.js"></script>
7 </head>
8 <body>
9 <script>
10 test(function() {
11 assert_equals(document.origin, 'http://127.0.0.1:8000');
12 }, 'Top-level document.');
13
14 test(function() {
15 var doc = document.implementation.createHTMLDocument();
16 assert_equals(doc.origin, 'http://127.0.0.1:8000');
17 }, 'createHTMLDocument()');
18
19
20 (function() {
21 var t = async_test("about:blank IFrame.");
22 t.step(function () {
23 var iframe = document.createElement('iframe');
24 iframe.addEventListener('load', function () {
25 assert_equals(iframe.contentDocument.origin, 'http://127.0.0.1:8 000');
26 t.done();
27 });
28 document.body.appendChild(iframe);
29 });
30 })();
31
32 (function() {
33 var t = async_test("srcdoc IFrame.");
34 t.step(function () {
35 var iframe = document.createElement('iframe');
36 iframe.setAttribute('srcdoc', '<p>Yay!</p>');
37 iframe.addEventListener('load', function () {
38 assert_equals(iframe.contentDocument.origin, 'http://127.0.0.1:8 000');
39 t.done();
40 });
41 document.body.appendChild(iframe);
42 });
43 })();
44
45 (function() {
46 var t = async_test("Same-origin IFrame.");
47 t.step(function () {
48 var iframe = document.createElement('iframe');
49 iframe.src = "/security/resources/postmessage-document-origin.html";
50 iframe.addEventListener('load', function () {
51 iframe.contentWindow.postMessage({ 'id': 'same-origin-iframe' }, '*');
52 });
53 window.addEventListener('message', function (e) {
54 if (e.data.id != 'same-origin-iframe')
55 return;
56
57 assert_equals(e.data.origin, 'http://127.0.0.1:8000');
58 assert_equals(e.data.origin, e.origin);
59 t.done();
60 });
61 document.body.appendChild(iframe);
62 });
63 })();
64
65 (function() {
66 var t = async_test("Cross-origin IFrame.");
67 t.step(function () {
68 var iframe = document.createElement('iframe');
69 iframe.src = "http://localhost:8080/security/resources/postmessage-d ocument-origin.html";
70 iframe.addEventListener('load', function () {
71 iframe.contentWindow.postMessage({ 'id': 'cross-origin-iframe' } , '*');
72 });
73 window.addEventListener('message', function (e) {
74 if (e.data.id != 'cross-origin-iframe')
75 return;
76
77 assert_equals(e.data.origin, 'http://localhost:8080');
78 assert_equals(e.data.origin, e.origin);
79 t.done();
80 });
81 document.body.appendChild(iframe);
82 });
83 })();
84
85 (function() {
86 var t = async_test("data: IFrame.");
87 t.step(function () {
88 var iframe = document.createElement('iframe');
89 iframe.src = "data:text/html,<script>" +
90 " window.addEventListener('message', function (e) {" +
91 " event.source.postMessage({" +
92 " 'origin': document.origin," +
93 " 'id': e.data.id" +
94 " }, e.origin);" +
95 " });" +
96 "</sc" + "ript>";
97
98 iframe.addEventListener('load', function () {
99 iframe.contentWindow.postMessage({ 'id': 'data-iframe' }, '*');
100 });
101 window.addEventListener('message', function (e) {
102 if (e.data.id != 'data-iframe')
103 return;
104
105 assert_equals(e.data.origin, 'null');
106 assert_equals(e.data.origin, e.origin);
107 t.done();
108 });
109 document.body.appendChild(iframe);
110 });
111 })();
112
113 (function() {
114 var t = async_test("Sandboxed same-origin IFrame.");
115 t.step(function () {
116 var iframe = document.createElement('iframe');
117 iframe.setAttribute('sandbox', 'allow-scripts');
118 iframe.src = "/security/resources/postmessage-document-origin.html";
119 iframe.addEventListener('load', function () {
120 iframe.contentWindow.postMessage({ 'id': 'sandboxed-same-origin- iframe' }, '*');
121 });
122 window.addEventListener('message', function (e) {
123 if (e.data.id != 'sandboxed-same-origin-iframe')
124 return;
125
126 assert_equals(e.data.origin, 'null');
127 assert_equals(e.data.origin, e.origin);
128 t.done();
129 });
130 document.body.appendChild(iframe);
131 });
132 })();
133
134 (function() {
135 var t = async_test("Sandboxed cross-origin IFrame.");
136 t.step(function () {
137 var iframe = document.createElement('iframe');
138 iframe.setAttribute('sandbox', 'allow-scripts');
139 iframe.src = "http://localhost:8080/security/resources/postmessage-d ocument-origin.html";
140 iframe.addEventListener('load', function () {
141 iframe.contentWindow.postMessage({ 'id': 'sandboxed-cross-origin -iframe' }, '*');
142 });
143 window.addEventListener('message', function (e) {
144 if (e.data.id != 'sandboxed-cross-origin-iframe')
145 return;
146
147 assert_equals(e.data.origin, 'null');
148 assert_equals(e.data.origin, e.origin);
149 t.done();
150 });
151 document.body.appendChild(iframe);
152 });
153 })();
154 </script>
155 </body>
156 </html>
OLDNEW
« no previous file with comments | « no previous file | LayoutTests/http/tests/security/document-origin-domain.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698