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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/wasm/wasm_remote_postMessage_test.html

Issue 2847063002: [wasm] Ensure postMessage doesn't work cross process. (Closed)
Patch Set: Created 3 years, 7 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 unified diff | Download patch
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <script src="../../../resources/testharness.js"></script>
3 <script src="../../../resources/testharnessreport.js"></script>
4 <script src="../resources/get-host-info.js"></script>
5 <script src="resources/load_wasm.js"></script>
6 <script>
7 if (window.location.origin != get_host_info().HTTPS_REMOTE_ORIGIN) {
jochen (gone - plz use gerrit) 2017/05/02 09:15:12 just name the file wasm_remote_postMessge_test.htt
8 window.location = get_host_info().HTTPS_REMOTE_ORIGIN + window.location.path name;
9 } else {
10 promise_test(async function() {
11 var remote_loc = get_host_info().AUTHENTICATED_ORIGIN + "/wasm/resources/r emote_frame.html";
12 var mod = await createWasmModule();
13 assert_true(mod instanceof WebAssembly.Module);
14 var remote;
15 await new Promise((resolve, reject) => {
16 var i = setInterval(()=>{
17 try {
18 remote.document;
19 } catch(e) {
20 clearInterval(i);
21 resolve();
22 }
23 }, 100);
24 remote = window.open("about:blank");
25 remote.opener = null;
26 remote.location = remote_loc;
27 });
28 var ans = await new Promise((resolve, reject) => {
29 remote.postMessage(mod, '*');
30 window.addEventListener("message",
31 function f(reply) {
32 resolve(reply.data);
33 window.removeEventListener("message", f);
34 }, false);
35 });
36 assert_equals(ans, "didn't make it");
37
38 ans = await new Promise((resolve, reject) => {
39 remote.postMessage("hi!", '*');
40 window.addEventListener("message", (reply) => resolve(reply.data), false );
41 });
42 assert_equals(ans, "hi!");
43 }, "cannot send wasm module to remote iframe");
44 }
45 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698