OLD | NEW |
1 if (self.importScripts) { | 1 if (self.importScripts) { |
2 importScripts('../resources/fetch-test-helpers.js'); | 2 importScripts('../resources/fetch-test-helpers.js'); |
3 } | 3 } |
4 | 4 |
5 // Tests that invalid names/values throw TypeError. | 5 // Tests that invalid names/values throw TypeError. |
6 function testInvalidNamesAndValues(headers) { | 6 function testInvalidNamesAndValues(headers) { |
7 INVALID_HEADER_NAMES.forEach(function(name) { | 7 INVALID_HEADER_NAMES.forEach(function(name) { |
8 assert_throws({name: 'TypeError'}, | 8 assert_throws({name: 'TypeError'}, |
9 function() { headers.append(name, 'a'); }, | 9 function() { headers.append(name, 'a'); }, |
10 'Headers.append with an invalid name (' + name + | 10 'Headers.append with an invalid name (' + name + |
(...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
361 header + ' must be set (2)'); | 361 header + ' must be set (2)'); |
362 }); | 362 }); |
363 }, 'Headers guard = response: ResponseInit.headers'); | 363 }, 'Headers guard = response: ResponseInit.headers'); |
364 | 364 |
365 promise_test(function(t) { | 365 promise_test(function(t) { |
366 return fetch('../resources/doctype.html') | 366 return fetch('../resources/doctype.html') |
367 .then(function(res) { | 367 .then(function(res) { |
368 [res.headers, | 368 [res.headers, |
369 res.clone().headers, | 369 res.clone().headers, |
370 Response.error().headers, | 370 Response.error().headers, |
371 Response.error().clone().headers].forEach(function(headers) { | 371 Response.error().clone().headers, |
| 372 Response.redirect('https://www.example.com/test.html').headers, |
| 373 Response.redirect('https://www.example.com/test.html').clone().headers |
| 374 ].forEach(function(headers) { |
372 testInvalidNamesAndValues(headers); | 375 testInvalidNamesAndValues(headers); |
373 | 376 |
374 // Test that TypeError is thrown for all header names. | 377 // Test that TypeError is thrown for all header names. |
375 FORBIDDEN_HEADER_NAMES | 378 FORBIDDEN_HEADER_NAMES |
376 .concat(FORBIDDEN_RESPONSE_HEADER_NAMES) | 379 .concat(FORBIDDEN_RESPONSE_HEADER_NAMES) |
377 .concat(SIMPLE_HEADER_NAMES) | 380 .concat(SIMPLE_HEADER_NAMES) |
378 .concat([CONTENT_TYPE]) | 381 .concat([CONTENT_TYPE]) |
379 .concat(NON_SIMPLE_HEADER_NAMES) | 382 .concat(NON_SIMPLE_HEADER_NAMES) |
380 .forEach(function(header) { | 383 .forEach(function(header) { |
381 var value = headers.get(header); | 384 var value = headers.get(header); |
(...skipping 14 matching lines...) Expand all Loading... |
396 function() { headers.delete(header); }, | 399 function() { headers.delete(header); }, |
397 'Headers.delete(' + header + ') must throw'); | 400 'Headers.delete(' + header + ') must throw'); |
398 assert_equals(headers.get(header), value, | 401 assert_equals(headers.get(header), value, |
399 'header ' + header + ' must be unchanged by delete()'); | 402 'header ' + header + ' must be unchanged by delete()'); |
400 }); | 403 }); |
401 }); | 404 }); |
402 }); | 405 }); |
403 }, 'Headers guard = immutable: set/append/delete'); | 406 }, 'Headers guard = immutable: set/append/delete'); |
404 | 407 |
405 done(); | 408 done(); |
OLD | NEW |