fetch-headers-non-ascii.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <!DOCTYPE html>
  2. <script src="../include.js"></script>
  3. <script>
  4. // This test ensures that the Headers get() methods can handle non-ASCII latin1 characters: code points U+0080-U+00FF.
  5. test(() => {
  6. println("--------------------------------");
  7. println("Headers constructor")
  8. println("--------------------------------");
  9. const headers = new Headers({
  10. "Accept": "before-æøå-after",
  11. "X-Test": "before-ß-after"
  12. });
  13. println("Accept: " + headers.get("Accept"));
  14. println("X-Test: " + headers.get("X-Test"));
  15. println("\n--------------------------------");
  16. println("Headers.append()")
  17. println("--------------------------------");
  18. const headers2 = new Headers();
  19. headers2.append("Accept", "before-æøå-after");
  20. headers2.append("X-Test", "before-ß-after");
  21. println("Accept: " + headers2.get("Accept"));
  22. println("X-Test: " + headers2.get("X-Test"));
  23. println("\n--------------------------------");
  24. println("Headers.set()")
  25. println("--------------------------------");
  26. const headers3 = new Headers({
  27. "X-Test": "should be overwritten"
  28. });
  29. headers3.set("Accept", "before-æøå-after");
  30. headers3.set("X-Test", "before-ß-after");
  31. println("Accept: " + headers3.get("Accept"));
  32. println("X-Test: " + headers3.get("X-Test"));
  33. println("\n--------------------------------");
  34. println("Headers.getSetCookie()")
  35. println("--------------------------------");
  36. const headers4 = new Headers({
  37. "Set-Cookie": "before-æøå-after",
  38. });
  39. println("Set-Cookie: " + headers4.getSetCookie());
  40. println("\n--------------------------------");
  41. println("Headers iterator")
  42. println("--------------------------------");
  43. const headers5 = new Headers({
  44. "Accept": "before-æøå-after",
  45. "X-Test": "before-ß-after"
  46. });
  47. for (const [key, value] of headers5) {
  48. println(`${key}: ${value}`);
  49. }
  50. println("\n--------------------------------");
  51. println("Headers.forEach()")
  52. println("--------------------------------");
  53. const headers6 = new Headers({
  54. "Accept": "before-æøå-after",
  55. "X-Test": "before-ß-after"
  56. });
  57. headers6.forEach((value, key) => {
  58. println(`${key}: ${value}`);
  59. });
  60. });
  61. </script>