diff options
author | 迷渡 <justjavac@gmail.com> | 2019-06-14 23:46:07 +0800 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2019-06-14 08:46:07 -0700 |
commit | 52448f351d7b0882ac67e2974b93c1e730f5dbb3 (patch) | |
tree | 57a67c325eae79b63d395dbea325959baec0ae2f /js/url_search_params_test.ts | |
parent | dc60fe9f300043f191286ef804a365e16e455f87 (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.ts | 10 |
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"); +}); |