<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Headers basic</title>
    <meta name="help" href="https://fetch.spec.whatwg.org/#headers">
    <meta name="help" href="https://heycam.github.io/webidl/#idl-iterable">
    <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <script>
        var headers = new Headers();
        var methods = ["append",
                       "delete",
                       "get",
                       "has",
                       "set",
                       //Headers is iterable
                       "entries",
                       "keys",
                       "values"
                       ];
        for (var idx in methods)
          test(function() {
            assert_true(methods[idx] in headers, "headers has " + methods[idx] + " method");
          }, "Headers has " + methods[idx] + " method");
    </script>
  </body>
</html>
