summaryrefslogtreecommitdiffstats
path: root/dom/websocket/tests/test_bug1384658.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/websocket/tests/test_bug1384658.html')
-rw-r--r--dom/websocket/tests/test_bug1384658.html54
1 files changed, 54 insertions, 0 deletions
diff --git a/dom/websocket/tests/test_bug1384658.html b/dom/websocket/tests/test_bug1384658.html
new file mode 100644
index 0000000000..dd90a0d5d3
--- /dev/null
+++ b/dom/websocket/tests/test_bug1384658.html
@@ -0,0 +1,54 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=1384658
+-->
+<head>
+ <meta charset="utf-8">
+ <title>Test for Bug 1384658</title>
+ <script src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+ <script type="application/javascript">
+
+ /** Test for Bug 1384658 **/
+
+function test_frameset() {
+ var bc = new BroadcastChannel("test_channel");
+ bc.postMessage("go");
+ bc.onmessage = ev => {
+ ok(ev.data.success, "We didn't hang");
+ bc.close();
+ test_window();
+ };
+}
+
+function test_window() {
+ var win = window.open("http://example.com/tests/dom/websocket/tests/window_bug1384658.html",
+ "_blank", "width=100,height=100");
+ var bc = new BroadcastChannel("test_channel");
+ bc.onmessage = ev => {
+ ok(ev.data.success, "We didn't hang");
+ bc.close();
+ win.close();
+ SimpleTest.finish();
+ };
+}
+
+SimpleTest.waitForExplicitFinish();
+// Use nsICookieService.BEHAVIOR_REJECT_TRACKER to not partition BroadcastChannel
+// by extra first-party domain information.
+SpecialPowers.pushPrefEnv({
+ set: [
+ ["network.cookie.cookieBehavior", 4],
+ // disable third-party storage isolation so the test works as expected
+ ["privacy.partition.always_partition_third_party_non_cookie_storage", false],
+ ["dom.security.https_first", false]
+ ],
+}, test_frameset);
+
+ </script>
+</head>
+<frameset id="frame_set" cols="25%,75%" frameborder="yes" border="5" bordercolor="#008800">
+ <frame id="test_frame" name="test_frame" src="frame_bug1384658.html" marginwidth="20" marginheight="20">
+</frameset>
+</html>