summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/url/urlsearchparams-size.any.js
blob: 7b3abc7c0b421cdb327921712a965aaaa03278b2 (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
34
test(() => {
  const params = new URLSearchParams("a=1&b=2&a=3");
  assert_equals(params.size, 3);

  params.delete("a");
  assert_equals(params.size, 1);
}, "URLSearchParams's size and deletion");

test(() => {
  const params = new URLSearchParams("a=1&b=2&a=3");
  assert_equals(params.size, 3);

  params.append("b", "4");
  assert_equals(params.size, 4);
}, "URLSearchParams's size and addition");

test(() => {
  const url = new URL("http://localhost/query?a=1&b=2&a=3");
  assert_equals(url.searchParams.size, 3);

  url.searchParams.delete("a");
  assert_equals(url.searchParams.size, 1);

  url.searchParams.append("b", 4);
  assert_equals(url.searchParams.size, 2);
}, "URLSearchParams's size when obtained from a URL");

test(() => {
  const url = new URL("http://localhost/query?a=1&b=2&a=3");
  assert_equals(url.searchParams.size, 3);

  url.search = "?";
  assert_equals(url.searchParams.size, 0);
}, "URLSearchParams's size when obtained from a URL and using .search");