summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/xhr/send-conditional.htm
blob: cbe3e94a4250ae6b0150af10d68dc6ad95606ee6 (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
<!doctype html>
<html>
  <head>
    <title>XMLHttpRequest: send() - conditional requests</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following::code[contains(text(),'Modified')]/.." />
  </head>
  <body>
    <div id="log"></div>
    <script>
      function request(type) {
        test(function() {
          var client = new XMLHttpRequest,
          identifier = type == "tag" ? Math.random() : new Date().toGMTString(),
          url = "resources/conditional.py?" + type + "=" + identifier
          client.open("GET", url, false)
          client.send(null)
          assert_equals(client.status, 200)
          assert_equals(client.statusText, "OK")
          assert_equals(client.responseText, "MAYBE NOT")
          client.open("GET", url, false)
          client.setRequestHeader(type == "tag" ? "If-None-Match" : "If-Modified-Since", identifier)
          client.send(null)
          assert_equals(client.status, 304)
          assert_equals(client.statusText, "SUPERCOOL")
          assert_equals(client.responseText, "")
        }, document.title + " (" + type + ")")
      }
      request("tag")
      request("date")
    </script>
  </body>
</html>