summaryrefslogtreecommitdiff
path: root/cli/js/url_test.ts
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-03-10 01:06:47 +0100
committerGitHub <noreply@github.com>2020-03-10 01:06:47 +0100
commit68119e1d7ed23421ccdcba20532ebe9ae3df9f18 (patch)
tree455dd170024112e3388adc27ebebb119b0ecda38 /cli/js/url_test.ts
parentdad8036766dca3417b79858b9a04d90447f88605 (diff)
reorg: move js runtime tests to cli/js/tests/ (#4250)
All Deno runtime test files were moved to cli/js/tests/ directory. It makes a clear distinction that cli/js/tests/ contains code that is run under Deno runtime as opposed to code in cli/js/ which is used to create bundle and snapshot with "deno_typescript".
Diffstat (limited to 'cli/js/url_test.ts')
-rw-r--r--cli/js/url_test.ts208
1 files changed, 0 insertions, 208 deletions
diff --git a/cli/js/url_test.ts b/cli/js/url_test.ts
deleted file mode 100644
index 46468c8ae..000000000
--- a/cli/js/url_test.ts
+++ /dev/null
@@ -1,208 +0,0 @@
-// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
-import { unitTest, assert, assertEquals, assertThrows } from "./test_util.ts";
-
-unitTest(function urlParsing(): void {
- const url = new URL(
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- assertEquals(url.hash, "#qat");
- assertEquals(url.host, "baz.qat:8000");
- assertEquals(url.hostname, "baz.qat");
- assertEquals(
- url.href,
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- assertEquals(url.origin, "https://baz.qat:8000");
- assertEquals(url.password, "bar");
- assertEquals(url.pathname, "/qux/quux");
- assertEquals(url.port, "8000");
- assertEquals(url.protocol, "https:");
- assertEquals(url.search, "?foo=bar&baz=12");
- assertEquals(url.searchParams.getAll("foo"), ["bar"]);
- assertEquals(url.searchParams.getAll("baz"), ["12"]);
- assertEquals(url.username, "foo");
- assertEquals(
- String(url),
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- assertEquals(
- JSON.stringify({ key: url }),
- `{"key":"https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"}`
- );
-});
-
-unitTest(function urlModifications(): void {
- const url = new URL(
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- url.hash = "";
- assertEquals(
- url.href,
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12"
- );
- url.host = "qat.baz:8080";
- assertEquals(
- url.href,
- "https://foo:bar@qat.baz:8080/qux/quux?foo=bar&baz=12"
- );
- url.hostname = "foo.bar";
- assertEquals(
- url.href,
- "https://foo:bar@foo.bar:8080/qux/quux?foo=bar&baz=12"
- );
- url.password = "qux";
- assertEquals(
- url.href,
- "https://foo:qux@foo.bar:8080/qux/quux?foo=bar&baz=12"
- );
- url.pathname = "/foo/bar%qat";
- assertEquals(
- url.href,
- "https://foo:qux@foo.bar:8080/foo/bar%qat?foo=bar&baz=12"
- );
- url.port = "";
- assertEquals(url.href, "https://foo:qux@foo.bar/foo/bar%qat?foo=bar&baz=12");
- url.protocol = "http:";
- assertEquals(url.href, "http://foo:qux@foo.bar/foo/bar%qat?foo=bar&baz=12");
- url.search = "?foo=bar&foo=baz";
- assertEquals(url.href, "http://foo:qux@foo.bar/foo/bar%qat?foo=bar&foo=baz");
- assertEquals(url.searchParams.getAll("foo"), ["bar", "baz"]);
- url.username = "foo@bar";
- assertEquals(
- url.href,
- "http://foo%40bar:qux@foo.bar/foo/bar%qat?foo=bar&foo=baz"
- );
- url.searchParams.set("bar", "qat");
- assertEquals(
- url.href,
- "http://foo%40bar:qux@foo.bar/foo/bar%qat?foo=bar&foo=baz&bar=qat"
- );
- url.searchParams.delete("foo");
- assertEquals(url.href, "http://foo%40bar:qux@foo.bar/foo/bar%qat?bar=qat");
- url.searchParams.append("foo", "bar");
- assertEquals(
- url.href,
- "http://foo%40bar:qux@foo.bar/foo/bar%qat?bar=qat&foo=bar"
- );
-});
-
-unitTest(function urlModifyHref(): void {
- const url = new URL("http://example.com/");
- url.href = "https://foo:bar@example.com:8080/baz/qat#qux";
- assertEquals(url.protocol, "https:");
- assertEquals(url.username, "foo");
- assertEquals(url.password, "bar");
- assertEquals(url.host, "example.com:8080");
- assertEquals(url.hostname, "example.com");
- assertEquals(url.pathname, "/baz/qat");
- assertEquals(url.hash, "#qux");
-});
-
-unitTest(function urlModifyPathname(): void {
- const url = new URL("http://foo.bar/baz%qat/qux%quux");
- assertEquals(url.pathname, "/baz%qat/qux%quux");
- url.pathname = url.pathname;
- assertEquals(url.pathname, "/baz%qat/qux%quux");
- url.pathname = "baz#qat qux";
- assertEquals(url.pathname, "/baz%23qat%20qux");
- url.pathname = url.pathname;
- assertEquals(url.pathname, "/baz%23qat%20qux");
-});
-
-unitTest(function urlModifyHash(): void {
- const url = new URL("http://foo.bar");
- url.hash = "%foo bar/qat%qux#bar";
- assertEquals(url.hash, "#%foo%20bar/qat%qux#bar");
- url.hash = url.hash;
- assertEquals(url.hash, "#%foo%20bar/qat%qux#bar");
-});
-
-unitTest(function urlSearchParamsReuse(): void {
- const url = new URL(
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- const sp = url.searchParams;
- url.host = "baz.qat";
- assert(sp === url.searchParams, "Search params should be reused.");
-});
-
-unitTest(function urlBaseURL(): void {
- const base = new URL(
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- const url = new URL("/foo/bar?baz=foo#qux", base);
- assertEquals(url.href, "https://foo:bar@baz.qat:8000/foo/bar?baz=foo#qux");
-});
-
-unitTest(function urlBaseString(): void {
- const url = new URL(
- "/foo/bar?baz=foo#qux",
- "https://foo:bar@baz.qat:8000/qux/quux?foo=bar&baz=12#qat"
- );
- assertEquals(url.href, "https://foo:bar@baz.qat:8000/foo/bar?baz=foo#qux");
-});
-
-unitTest(function urlRelativeWithBase(): void {
- assertEquals(new URL("", "file:///a/a/a").href, "file:///a/a/a");
- assertEquals(new URL(".", "file:///a/a/a").href, "file:///a/a/");
- assertEquals(new URL("..", "file:///a/a/a").href, "file:///a/");
- assertEquals(new URL("b", "file:///a/a/a").href, "file:///a/a/b");
- assertEquals(new URL("b", "file:///a/a/a/").href, "file:///a/a/a/b");
- assertEquals(new URL("b/", "file:///a/a/a").href, "file:///a/a/b/");
- assertEquals(new URL("../b", "file:///a/a/a").href, "file:///a/b");
-});
-
-unitTest(function emptyBasePath(): void {
- assertEquals(new URL("", "http://example.com").href, "http://example.com/");
-});
-
-unitTest(function deletingAllParamsRemovesQuestionMarkFromURL(): void {
- const url = new URL("http://example.com/?param1&param2");
- url.searchParams.delete("param1");
- url.searchParams.delete("param2");
- assertEquals(url.href, "http://example.com/");
- assertEquals(url.search, "");
-});
-
-unitTest(function removingNonExistentParamRemovesQuestionMarkFromURL(): void {
- const url = new URL("http://example.com/?");
- assertEquals(url.href, "http://example.com/?");
- url.searchParams.delete("param1");
- assertEquals(url.href, "http://example.com/");
- assertEquals(url.search, "");
-});
-
-unitTest(function sortingNonExistentParamRemovesQuestionMarkFromURL(): void {
- const url = new URL("http://example.com/?");
- assertEquals(url.href, "http://example.com/?");
- url.searchParams.sort();
- assertEquals(url.href, "http://example.com/");
- assertEquals(url.search, "");
-});
-
-/*
-unitTest(function customInspectFunction(): void {
- const url = new URL("http://example.com/?");
- assertEquals(
- Deno.inspect(url),
- 'URL { href: "http://example.com/?", origin: "http://example.com", protocol: "http:", username: "", password: "", host: "example.com", hostname: "example.com", port: "", pathname: "/", hash: "", search: "?" }'
- );
-});
-*/
-
-unitTest(function protocolNotHttpOrFile() {
- const url = new URL("about:blank");
- assertEquals(url.href, "about:blank");
- assertEquals(url.protocol, "about:");
- assertEquals(url.origin, "null");
-});
-
-unitTest(function createBadUrl(): void {
- assertThrows(() => {
- new URL("0.0.0.0:8080");
- });
-});
-
-if (import.meta.main) {
- Deno.runTests();
-}