| <!doctype html> | 
 | <html> | 
 |  <head> | 
 |  <title>XMLHttpRequest: prototype and members</title> | 
 |  <script src="/resources/testharness.js"></script> | 
 |  <script src="/resources/testharnessreport.js"></script> | 
 |  <link rel="help" href="https://xhr.spec.whatwg.org/#dom-xmlhttprequest" data-tested-assertations="following::ol/li[1]" /> | 
 |  <link rel="help" href="https://xhr.spec.whatwg.org/#xmlhttprequest" data-tested-assertations="." /> | 
 |  <link rel="help" href="https://xhr.spec.whatwg.org/#states" data-tested-assertations="following::dfn[2] following::dfn[3] following::dfn[4] following::dfn[5] following::dfn[6]" /> | 
 |  </head> | 
 |  <body> | 
 |  <div id="log"></div> | 
 |  <script> | 
 |  test(function() { | 
 |  XMLHttpRequest.prototype.test = function() { return "TEH" } | 
 |  var client = new XMLHttpRequest() | 
 |  assert_equals(client.test(), "TEH") | 
 |  var members = ["onreadystatechange", | 
 |  "open", | 
 |  "setRequestHeader", | 
 |  "send", | 
 |  "abort", | 
 |  "status", | 
 |  "statusText", | 
 |  "getResponseHeader", | 
 |  "getAllResponseHeaders", | 
 |  "responseText", | 
 |  "responseXML"] | 
 |  for(var x in members) | 
 |  assert_true(members[x] in client, members[x]) | 
 |  var constants = ["UNSENT", | 
 |  "OPENED", | 
 |  "HEADERS_RECEIVED", | 
 |  "LOADING", | 
 |  "DONE"], | 
 |  i = 0 | 
 |  for(var x in constants) { | 
 |  assert_equals(client[constants[x]], i, constants[x]) | 
 |  assert_equals(XMLHttpRequest[constants[x]], i, "XHR " + constants[x]) | 
 |  i++ | 
 |  } | 
 |  }) | 
 |  </script> | 
 |  </body> | 
 | </html> |