| Index: LayoutTests/http/tests/xmlhttprequest/header-value-update/normalize-affected-3.html
 | 
| diff --git a/LayoutTests/http/tests/xmlhttprequest/header-value-update/normalize-affected-3.html b/LayoutTests/http/tests/xmlhttprequest/header-value-update/normalize-affected-3.html
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..81a435d082449922837a74d5c39c2b66b2c10ddd
 | 
| --- /dev/null
 | 
| +++ b/LayoutTests/http/tests/xmlhttprequest/header-value-update/normalize-affected-3.html
 | 
| @@ -0,0 +1,32 @@
 | 
| +<!doctype html>
 | 
| +<head>
 | 
| +<script src = "../../resources/testharness.js"></script>
 | 
| +<script src = "../../resources/testharnessreport.js"></script>
 | 
| +</head>
 | 
| +<body>
 | 
| +<script>
 | 
| +// Normalization will remove leading/trailing whitespaces and has effects
 | 
| +// because the whitespaces remain in the middle of header values as we call
 | 
| +// setRequestHeader multiple times.
 | 
| +// https://fetch.spec.whatwg.org/#concept-header-value-normalize
 | 
| +// https://crbug.com/455099
 | 
| +async_test(function(t) {
 | 
| +  var xhr = new XMLHttpRequest;
 | 
| +  xhr.open("GET", "../resources/print-headers.cgi");
 | 
| +
 | 
| +  xhr.setRequestHeader('test1', 'a');
 | 
| +  xhr.setRequestHeader('test1', '\tb');
 | 
| +
 | 
| +  xhr.onload = t.step_func(function() {
 | 
| +    // This expectation must be updated once we update header value checks.
 | 
| +    assert_regexp_match(xhr.responseText, /HTTP_TEST1: a, \tb\r?\n/,
 | 
| +        'Whitespaces remains in the middle of the header value.');
 | 
| +    t.done();
 | 
| +  });
 | 
| +  xhr.onerror = t.unreached_func('should not fail');
 | 
| +    xhr.send();
 | 
| +  }, 'multiple setRequestHeader() with leading/trailing whitespaces');
 | 
| +
 | 
| +done();
 | 
| +</script>
 | 
| +</body>
 | 
| 
 |