summary refs log tree commit diff stats
path: root/tests/stdlib
diff options
context:
space:
mode:
Diffstat (limited to 'tests/stdlib')
-rw-r--r--tests/stdlib/tospaths.nim41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/stdlib/tospaths.nim b/tests/stdlib/tospaths.nim
new file mode 100644
index 000000000..0ac7729d9
--- /dev/null
+++ b/tests/stdlib/tospaths.nim
@@ -0,0 +1,41 @@
+discard """

+  file: "tospaths.nim"

+  output: ""

+"""

+# test the ospaths module

+

+import os

+

+doAssert unixToNativePath("") == ""

+doAssert unixToNativePath(".") == $CurDir

+doAssert unixToNativePath("..") == $ParDir

+doAssert isAbsolute(unixToNativePath("/"))

+doAssert isAbsolute(unixToNativePath("/", "a"))

+doAssert isAbsolute(unixToNativePath("/a"))

+doAssert isAbsolute(unixToNativePath("/a", "a"))

+doAssert isAbsolute(unixToNativePath("/a/b"))

+doAssert isAbsolute(unixToNativePath("/a/b", "a"))

+doAssert unixToNativePath("a/b") == joinPath("a", "b")

+

+when defined(macos):

+    doAssert unixToNativePath("./") == ":"

+    doAssert unixToNativePath("./abc") == ":abc"

+    doAssert unixToNativePath("../abc") == "::abc"

+    doAssert unixToNativePath("../../abc") == ":::abc"

+    doAssert unixToNativePath("/abc", "a") == "abc"

+    doAssert unixToNativePath("/abc/def", "a") == "abc:def"

+elif doslikeFileSystem:

+    doAssert unixToNativePath("./") == ".\\"

+    doAssert unixToNativePath("./abc") == ".\\abc"

+    doAssert unixToNativePath("../abc") == "..\\abc"

+    doAssert unixToNativePath("../../abc") == "..\\..\\abc"

+    doAssert unixToNativePath("/abc", "a") == "a:\\abc"

+    doAssert unixToNativePath("/abc/def", "a") == "a:\\abc\\def"

+else:

+    #Tests for unix

+    doAssert unixToNativePath("./") == "./"

+    doAssert unixToNativePath("./abc") == "./abc"

+    doAssert unixToNativePath("../abc") == "../abc"

+    doAssert unixToNativePath("../../abc") == "../../abc"

+    doAssert unixToNativePath("/abc", "a") == "/abc"

+    doAssert unixToNativePath("/abc/def", "a") == "/abc/def"