summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/xhr/allow-lists-starting-with-comma.htm
blob: ece699bf5d75f1a69304edb330857bd1ea0e99e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!DOCTYPE html>
<html>
  <head>
    <title>Allow lists starting with a comma should be parsed correctly</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src="/common/get-host-info.sub.js"></script>
  </head>
  <body>
  <script type="text/javascript">
    async_test(function(test) {
      const client = new XMLHttpRequest();
      let url = "xhr/resources/access-control-allow-lists.py?headers=,y-lol,x-print,%20,,,y-print&origin=" +
          get_host_info().HTTP_ORIGIN;
      client.open("GET", get_host_info().HTTP_REMOTE_ORIGIN + '/' + url, false);
      client.setRequestHeader('x-print', 'unicorn')
      client.setRequestHeader('y-print', 'narwhal')
      // Sending GET request with custom headers
      assert_equals(client.send(null), undefined);
      const response = JSON.parse(client.response);
      assert_equals(response['x-print'], "unicorn");
      assert_equals(response['y-print'], "narwhal");

      url = "xhr/resources/access-control-allow-lists.py?methods=,,PUT,GET&origin=" +
          get_host_info().HTTP_ORIGIN;
      client.open("PUT", get_host_info().HTTP_REMOTE_ORIGIN + '/' + url, false);
      // Sending PUT request
      assert_equals(client.send(null), undefined);
      test.done();
    }, "Allow lists starting with a comma should be parsed correctly");
  </script>
  </body>
  </html>