summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/070.html
blob: 4b82a9e83f9b23dcf3899303b1e1ed51d00ca297 (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> scheduler: document.write into IFRAME a script that adds a SCRIPT through DOM</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="testlib/testlib.js"></script>

</head>
<body>

  <div id="log">FAILED (This TC requires JavaScript enabled)</div>

  <iframe></iframe>

  <script type="text/javascript">
    var doc = document.getElementsByTagName('iframe')[0].contentDocument;
    doc.open();

    log("calling document.write");
    doc.write('<script>top.log("inline script #1");'+
              'var s=document.createElement("script");'+
              's.src="scripts/include-6.js?'+new Date().getTime()+'";'+
              'document.getElementsByTagName("head")[0].appendChild(s);'+
              '<\/script>'+
              '<div id="foo"></div>'+
              '<script>top.log("inline script #2");<\/script>'
    );

    log("calling document.close");
    doc.close();

    var t = async_test()


    function test() {
      if(!window.include6Loaded) {
            return setTimeout(t.step_func(test),200);
      }
      assert_array_equals(eventOrder, ['calling document.write', 'inline script #1', 'inline script #2', 'calling document.close', 'external script (#foo found? YES)']);
      t.done();
    }

    onload = t.step_func(test)
  </script>
</head>

</body>
</html>