11cb0ef41Sopenharmony_citest(() => {
21cb0ef41Sopenharmony_ci  const params = new URLSearchParams("a=1&b=2&a=3");
31cb0ef41Sopenharmony_ci  assert_equals(params.size, 3);
41cb0ef41Sopenharmony_ci
51cb0ef41Sopenharmony_ci  params.delete("a");
61cb0ef41Sopenharmony_ci  assert_equals(params.size, 1);
71cb0ef41Sopenharmony_ci}, "URLSearchParams's size and deletion");
81cb0ef41Sopenharmony_ci
91cb0ef41Sopenharmony_citest(() => {
101cb0ef41Sopenharmony_ci  const params = new URLSearchParams("a=1&b=2&a=3");
111cb0ef41Sopenharmony_ci  assert_equals(params.size, 3);
121cb0ef41Sopenharmony_ci
131cb0ef41Sopenharmony_ci  params.append("b", "4");
141cb0ef41Sopenharmony_ci  assert_equals(params.size, 4);
151cb0ef41Sopenharmony_ci}, "URLSearchParams's size and addition");
161cb0ef41Sopenharmony_ci
171cb0ef41Sopenharmony_citest(() => {
181cb0ef41Sopenharmony_ci  const url = new URL("http://localhost/query?a=1&b=2&a=3");
191cb0ef41Sopenharmony_ci  assert_equals(url.searchParams.size, 3);
201cb0ef41Sopenharmony_ci
211cb0ef41Sopenharmony_ci  url.searchParams.delete("a");
221cb0ef41Sopenharmony_ci  assert_equals(url.searchParams.size, 1);
231cb0ef41Sopenharmony_ci
241cb0ef41Sopenharmony_ci  url.searchParams.append("b", 4);
251cb0ef41Sopenharmony_ci  assert_equals(url.searchParams.size, 2);
261cb0ef41Sopenharmony_ci}, "URLSearchParams's size when obtained from a URL");
271cb0ef41Sopenharmony_ci
281cb0ef41Sopenharmony_citest(() => {
291cb0ef41Sopenharmony_ci  const url = new URL("http://localhost/query?a=1&b=2&a=3");
301cb0ef41Sopenharmony_ci  assert_equals(url.searchParams.size, 3);
311cb0ef41Sopenharmony_ci
321cb0ef41Sopenharmony_ci  url.search = "?";
331cb0ef41Sopenharmony_ci  assert_equals(url.searchParams.size, 0);
341cb0ef41Sopenharmony_ci}, "URLSearchParams's size when obtained from a URL and using .search");
35