URLSearchParams can result in ? removal from URL now

Changes outcome of test added in #6445.

Tests for https://github.com/whatwg/url/pull/336.
diff --git a/url/urlsearchparams-delete.html b/url/urlsearchparams-delete.html
index afc9c60..d4bc0a6 100644
--- a/url/urlsearchparams-delete.html
+++ b/url/urlsearchparams-delete.html
@@ -41,9 +41,16 @@
     var url = new URL('http://example.com/?param1&param2');
     url.searchParams.delete('param1');
     url.searchParams.delete('param2');
-    assert_equals(url.href, 'http://example.com/?', 'url.href has ?');
+    assert_equals(url.href, 'http://example.com/', 'url.href does not have ?');
     assert_equals(url.search, '', 'url.search does not have ?');
-}, 'Deleting all params keeps ? in URL');
+}, 'Deleting all params removes ? from URL');
+
+test(function() {
+    var url = new URL('http://example.com/?');
+    url.searchParams.delete('param1');
+    assert_equals(url.href, 'http://example.com/', 'url.href does not have ?');
+    assert_equals(url.search, '', 'url.search does not have ?');
+}, 'Removing non-existent param removes ? from URL');
 </script>
 </head>
 </html>
diff --git a/url/urlsearchparams-sort.html b/url/urlsearchparams-sort.html
index e643ed3..3419989 100644
--- a/url/urlsearchparams-sort.html
+++ b/url/urlsearchparams-sort.html
@@ -47,4 +47,11 @@
     }
   }, "URL parse and sort: " + val.input)
 })
+
+test(function() {
+  const url = new URL("http://example.com/?")
+  url.searchParams.sort()
+  assert_equals(url.href, "http://example.com/")
+  assert_equals(url.search, "")
+}, "Sorting non-existent params removes ? from URL")
 </script>