From c79f488027239d1a43582cc52f0688b23cf504fb Mon Sep 17 00:00:00 2001 From: Tomohiro Date: Tue, 3 Jul 2018 00:14:26 +0900 Subject: Fix os.unixToNativePath proc returns wrong result(#8179) (#8181) * Fix os.unixToNativePath proc returns wrong result(#8179) * Add tests for unixToNativePath --- tests/stdlib/tospaths.nim | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 tests/stdlib/tospaths.nim (limited to 'tests/stdlib') 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" -- cgit 1.4.1-2-gfad0