summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/eventsource/request-cache-control.htm
blob: b3965929257dce8d7a45215eb99f5a53991aca2e (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
<!DOCTYPE html>
<html>
  <head>
    <title>EventSource: Cache-Control</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div id="log"></div>
    <script>
      var crossdomain = location.href
                    .replace('://', '://www2.')
                    .replace(/\/[^\/]*$/, '/')

      // running it twice to check whether it stays consistent
      function cacheTest(runAgain, url) {
        var test = async_test()
        test.step(function() {
          var source = new EventSource(url)
          source.onmessage = function(e) {
            test.step(function() {
              assert_equals(e.data, "no-cache")
              this.close()
              if(runAgain)
                cacheTest(false, url) // this nests tests
            }, this)
            test.done()
          }
        })
      }

      cacheTest(true, "resources/cache-control.event_stream?pipe=sub")
      cacheTest(true, crossdomain + "resources/cors.py?run=cache-control")
    </script>
  </body>
</html>