From b344a7f81fa00d1611212cac82b631f9d1dffdf0 Mon Sep 17 00:00:00 2001 From: Prabhanjan <24642451+Sparkenstein@users.noreply.github.com> Date: Wed, 12 Aug 2020 15:38:24 +0530 Subject: fix: URLSearchParams.toString() behaviour is different from browsers (#7017) --- cli/tests/unit/url_search_params_test.ts | 38 ++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'cli/tests/unit') diff --git a/cli/tests/unit/url_search_params_test.ts b/cli/tests/unit/url_search_params_test.ts index 6965fe128..7698ef1ce 100644 --- a/cli/tests/unit/url_search_params_test.ts +++ b/cli/tests/unit/url_search_params_test.ts @@ -1,6 +1,44 @@ // Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. import { unitTest, assert, assertEquals } from "./test_util.ts"; +unitTest(function urlSearchParamsWithSpace(): void { + const init = { str: "hello world" }; + const searchParams = new URLSearchParams(init).toString(); + assertEquals(searchParams, "str=hello+world"); +}); + +unitTest(function urlSearchParamsWithExclamation(): void { + const init = [ + ["str", "hello, world!"], + ]; + const searchParams = new URLSearchParams(init).toString(); + assertEquals(searchParams, "str=hello%2C+world%21"); +}); + +unitTest(function urlSearchParamsWithQuotes(): void { + const init = [ + ["str", "'hello world'"], + ]; + const searchParams = new URLSearchParams(init).toString(); + assertEquals(searchParams, "str=%27hello+world%27"); +}); + +unitTest(function urlSearchParamsWithBraket(): void { + const init = [ + ["str", "(hello world)"], + ]; + const searchParams = new URLSearchParams(init).toString(); + assertEquals(searchParams, "str=%28hello+world%29"); +}); + +unitTest(function urlSearchParamsWithTilde(): void { + const init = [ + ["str", "hello~world"], + ]; + const searchParams = new URLSearchParams(init).toString(); + assertEquals(searchParams, "str=hello%7Eworld"); +}); + unitTest(function urlSearchParamsInitString(): void { const init = "c=4&a=2&b=3&%C3%A1=1"; const searchParams = new URLSearchParams(init); -- cgit v1.2.3