https://github.com/web-platform-tests/wpt
Raw File
Tip revision: ffd8b73499f6099fb269344d81208743d1b9f54c authored by Hallvord R. M. Steen on 25 February 2016, 15:23:24 UTC
Reordering asserts to make failures easier to debug
Tip revision: ffd8b73
send-entity-body-get-head.htm
<!doctype html>
<html>
  <head>
    <title>XMLHttpRequest: send() - non-empty data argument and GET/HEAD</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::OL[1]/LI[3] following::OL[1]/LI[7]" />  

  </head>
  <body>
    <div id="log"></div>
    <script>
      function request(method) {
        test(function() {
          var events=[]
          var logEvt = function (e) {
            events.push(e.type)
          }
          var client = new XMLHttpRequest()
          client.open(method, "resources/content.py", false)
          client.send("TEST")
          client.upload.addEventListener('progress', logEvt)
          client.upload.addEventListener('loadend', logEvt)
          client.upload.addEventListener('loadstart', logEvt)

          if (method === "HEAD") {
            // Fetch 4.4.3 --- Set Content-Length to 0 if method is HEAD and
            // request's body is null.
            assert_equals(client.getResponseHeader("x-request-content-length"), "0")
          } else {
            assert_equals(client.getResponseHeader("x-request-content-length"), "NO")
          }
          assert_equals(client.getResponseHeader("x-request-method"), method)
          assert_equals(client.responseText, "")
          assert_array_equals(events, [])
        }, document.title + " (" + method + ")")
      }
      request("GET")
      request("HEAD")
    </script>
  </body>
</html>
back to top