summaryrefslogtreecommitdiff
path: root/std/path/join_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/path/join_test.ts')
-rw-r--r--std/path/join_test.ts128
1 files changed, 0 insertions, 128 deletions
diff --git a/std/path/join_test.ts b/std/path/join_test.ts
deleted file mode 100644
index 122376be1..000000000
--- a/std/path/join_test.ts
+++ /dev/null
@@ -1,128 +0,0 @@
-// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
-import { assertEquals } from "../testing/asserts.ts";
-import * as path from "./mod.ts";
-
-const backslashRE = /\\/g;
-
-const joinTests =
- // arguments result
- [
- [[".", "x/b", "..", "/b/c.js"], "x/b/c.js"],
- [[], "."],
- [["/.", "x/b", "..", "/b/c.js"], "/x/b/c.js"],
- [["/foo", "../../../bar"], "/bar"],
- [["foo", "../../../bar"], "../../bar"],
- [["foo/", "../../../bar"], "../../bar"],
- [["foo/x", "../../../bar"], "../bar"],
- [["foo/x", "./bar"], "foo/x/bar"],
- [["foo/x/", "./bar"], "foo/x/bar"],
- [["foo/x/", ".", "bar"], "foo/x/bar"],
- [["./"], "./"],
- [[".", "./"], "./"],
- [[".", ".", "."], "."],
- [[".", "./", "."], "."],
- [[".", "/./", "."], "."],
- [[".", "/////./", "."], "."],
- [["."], "."],
- [["", "."], "."],
- [["", "foo"], "foo"],
- [["foo", "/bar"], "foo/bar"],
- [["", "/foo"], "/foo"],
- [["", "", "/foo"], "/foo"],
- [["", "", "foo"], "foo"],
- [["foo", ""], "foo"],
- [["foo/", ""], "foo/"],
- [["foo", "", "/bar"], "foo/bar"],
- [["./", "..", "/foo"], "../foo"],
- [["./", "..", "..", "/foo"], "../../foo"],
- [[".", "..", "..", "/foo"], "../../foo"],
- [["", "..", "..", "/foo"], "../../foo"],
- [["/"], "/"],
- [["/", "."], "/"],
- [["/", ".."], "/"],
- [["/", "..", ".."], "/"],
- [[""], "."],
- [["", ""], "."],
- [[" /foo"], " /foo"],
- [[" ", "foo"], " /foo"],
- [[" ", "."], " "],
- [[" ", "/"], " /"],
- [[" ", ""], " "],
- [["/", "foo"], "/foo"],
- [["/", "/foo"], "/foo"],
- [["/", "//foo"], "/foo"],
- [["/", "", "/foo"], "/foo"],
- [["", "/", "foo"], "/foo"],
- [["", "/", "/foo"], "/foo"],
- ];
-
-// Windows-specific join tests
-const windowsJoinTests = [
- // arguments result
- // UNC path expected
- [["//foo/bar"], "\\\\foo\\bar\\"],
- [["\\/foo/bar"], "\\\\foo\\bar\\"],
- [["\\\\foo/bar"], "\\\\foo\\bar\\"],
- // UNC path expected - server and share separate
- [["//foo", "bar"], "\\\\foo\\bar\\"],
- [["//foo/", "bar"], "\\\\foo\\bar\\"],
- [["//foo", "/bar"], "\\\\foo\\bar\\"],
- // UNC path expected - questionable
- [["//foo", "", "bar"], "\\\\foo\\bar\\"],
- [["//foo/", "", "bar"], "\\\\foo\\bar\\"],
- [["//foo/", "", "/bar"], "\\\\foo\\bar\\"],
- // UNC path expected - even more questionable
- [["", "//foo", "bar"], "\\\\foo\\bar\\"],
- [["", "//foo/", "bar"], "\\\\foo\\bar\\"],
- [["", "//foo/", "/bar"], "\\\\foo\\bar\\"],
- // No UNC path expected (no double slash in first component)
- [["\\", "foo/bar"], "\\foo\\bar"],
- [["\\", "/foo/bar"], "\\foo\\bar"],
- [["", "/", "/foo/bar"], "\\foo\\bar"],
- // No UNC path expected (no non-slashes in first component -
- // questionable)
- [["//", "foo/bar"], "\\foo\\bar"],
- [["//", "/foo/bar"], "\\foo\\bar"],
- [["\\\\", "/", "/foo/bar"], "\\foo\\bar"],
- [["//"], "\\"],
- // No UNC path expected (share name missing - questionable).
- [["//foo"], "\\foo"],
- [["//foo/"], "\\foo\\"],
- [["//foo", "/"], "\\foo\\"],
- [["//foo", "", "/"], "\\foo\\"],
- // No UNC path expected (too many leading slashes - questionable)
- [["///foo/bar"], "\\foo\\bar"],
- [["////foo", "bar"], "\\foo\\bar"],
- [["\\\\\\/foo/bar"], "\\foo\\bar"],
- // Drive-relative vs drive-absolute paths. This merely describes the
- // status quo, rather than being obviously right
- [["c:"], "c:."],
- [["c:."], "c:."],
- [["c:", ""], "c:."],
- [["", "c:"], "c:."],
- [["c:.", "/"], "c:.\\"],
- [["c:.", "file"], "c:file"],
- [["c:", "/"], "c:\\"],
- [["c:", "file"], "c:\\file"],
-];
-
-Deno.test("join", function () {
- joinTests.forEach(function (p) {
- const _p = p[0] as string[];
- const actual = path.posix.join.apply(null, _p);
- assertEquals(actual, p[1]);
- });
-});
-
-Deno.test("joinWin32", function () {
- joinTests.forEach(function (p) {
- const _p = p[0] as string[];
- const actual = path.win32.join.apply(null, _p).replace(backslashRE, "/");
- assertEquals(actual, p[1]);
- });
- windowsJoinTests.forEach(function (p) {
- const _p = p[0] as string[];
- const actual = path.win32.join.apply(null, _p);
- assertEquals(actual, p[1]);
- });
-});