<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>XMLHttpRequest: setRequestHeader() value argument checks</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method" data-tested-assertations="/following::ol/li[4]" />
  </head>
  <body>
    <div id="log"></div>
    <script>
      function try_value(value) {
        test(function() {
          var client = new XMLHttpRequest()
          client.open("GET", "...")
          assert_throws("SyntaxError", function() { client.setRequestHeader("x-test", value) }, ' given value ' + value+', ')
        })
      }
      try_value("t\rt")
      try_value("t\nt")
      try_value("t\bt");
      try_value("\x7f");
      try_value("ﾃｽﾄ")

      test(function() {
        var client = new XMLHttpRequest()
        client.open("GET", "...")
        assert_throws(new TypeError(), function() { client.setRequestHeader("x-test") })
      }, 'Omitted value argument')
    </script>
  </body>
</html>
