summaryrefslogtreecommitdiff
path: root/js/url_search_params_test.ts
diff options
context:
space:
mode:
author迷渡 <justjavac@gmail.com>2019-06-14 23:46:07 +0800
committerRyan Dahl <ry@tinyclouds.org>2019-06-14 08:46:07 -0700
commit52448f351d7b0882ac67e2974b93c1e730f5dbb3 (patch)
tree57a67c325eae79b63d395dbea325959baec0ae2f /js/url_search_params_test.ts
parentdc60fe9f300043f191286ef804a365e16e455f87 (diff)
feat: URLSearchParams should work with custom iterator (#2512)
Diffstat (limited to 'js/url_search_params_test.ts')
-rw-r--r--js/url_search_params_test.ts10
1 files changed, 10 insertions, 0 deletions
diff --git a/js/url_search_params_test.ts b/js/url_search_params_test.ts
index d37b55497..e270dd7ff 100644
--- a/js/url_search_params_test.ts
+++ b/js/url_search_params_test.ts
@@ -217,3 +217,13 @@ test(function urlSearchParamsDeletingAppendedMultiple(): void {
params.delete("first");
assertEquals(params.has("first"), false);
});
+
+// ref: https://github.com/web-platform-tests/wpt/blob/master/url/urlsearchparams-constructor.any.js#L176-L182
+test(function urlSearchParamsCustomSymbolIterator(): void {
+ const params = new URLSearchParams();
+ params[Symbol.iterator] = function*(): IterableIterator<[string, string]> {
+ yield ["a", "b"];
+ };
+ const params1 = new URLSearchParams((params as unknown) as string[][]);
+ assertEquals(params1.get("a"), "b");
+});