summaryrefslogtreecommitdiffstats
path: root/security/manager/ssl/tests/mochitest/mixedcontent/test_dynDelayedUnsecureXHR.html
blob: d9a8cc8af7808dcf415f2223eaf2870e76349fe6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE HTML>
<html>
<head>
  <title>unsecure XHR test</title>
  <script type="text/javascript" src="/MochiKit/Base.js"></script>
  <script type="text/javascript" src="/MochiKit/DOM.js"></script>
  <script type="text/javascript" src="/MochiKit/Style.js"></script>
  <script type="text/javascript" src="/MochiKit/Signal.js"></script>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <script type="text/javascript" src="mixedContentTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />

  <script class="testbody" type="text/javascript">
  "use strict";

  hasMixedActiveContent = true;

  async function runTest()
  {
    await isSecurityState("secure");
    window.setTimeout(async () => {
      try {
        let req = new XMLHttpRequest();
        req.open("GET", "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/alloworigin.sjs", false);
        req.send(null);

        // Change should be immediate, the request was sent synchronously
        await isSecurityState("broken", "security broken after insecure XHR");
      } catch (ex) {
        ok(false, ex);
      }

      finish();
    }, 0);
  }

  async function afterNavigationTest()
  {
    await isSecurityState("secure", "security full after navigation");
    finish();
  }

  </script>
</head>

<body>
</body>
</html>