diff options
Diffstat (limited to '')
-rw-r--r-- | test/wpt/tests/xhr/setrequestheader-open-setrequestheader.htm | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/test/wpt/tests/xhr/setrequestheader-open-setrequestheader.htm b/test/wpt/tests/xhr/setrequestheader-open-setrequestheader.htm new file mode 100644 index 0000000..d77d34f --- /dev/null +++ b/test/wpt/tests/xhr/setrequestheader-open-setrequestheader.htm @@ -0,0 +1,53 @@ +<!DOCTYPE html> +<!-- +Test from https://bugzilla.mozilla.org/show_bug.cgi?id=819051 +--> +<head> + <title>XMLHttpRequest: setRequestHeader() and open()</title> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-open()-method"> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method"> +</head> +<body> + <p id="log"></p> +<script type="text/javascript"> +async_test(test => { + +var url = "resources/inspect-headers.py"; + +var xhr = new XMLHttpRequest(); +xhr.open("GET", url + "?filter_name=x-appended-to-this"); +xhr.setRequestHeader("X-appended-to-this", "False"); +xhr.open("GET", url + "?filter_name=x-appended-to-this"); +xhr.setRequestHeader("X-appended-to-this", "True"); + +xhr.onreadystatechange = test.step_func(() => { + if (xhr.readyState == 4) { + assert_equals(xhr.responseText, "X-appended-to-this: True\n", "Set headers record should have been cleared by open."); + test_standard_header(); + } +}) + +xhr.send(); + +function test_standard_header () { + var header_tested = "Accept"; + var xhr = new XMLHttpRequest(); + xhr.open("GET", url + "?filter_name=accept"); + xhr.setRequestHeader("Accept", "foo/bar"); + xhr.open("GET", url + "?filter_name=accept"); + xhr.setRequestHeader("Accept", "bar/foo"); + + xhr.onreadystatechange = test.step_func(() => { + if (xhr.readyState == 4) { + assert_equals(xhr.responseText, "Accept: bar/foo\n", "Set headers record should have been cleared by open."); + test.done(); + } + }) + + xhr.send(); +} + +}) +</script> |