1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
import paths
import test.framework
import sys.env
proc main()
let runner = new framework.TestRunner()
// expand_home
env.set_env("HOME", "/home/test")
runner.assert_eq_string(paths.expand_home("~/foo"), "/home/test/foo", "~/foo expands")
runner.assert_eq_string(paths.expand_home("~"), "/home/test", "bare ~ expands")
runner.assert_eq_string(paths.expand_home("/abs/path"), "/abs/path", "abs path passthrough")
runner.assert_eq_string(paths.expand_home("relative"), "relative", "relative passthrough")
runner.assert_eq_string(paths.expand_home(""), "", "empty passthrough")
// join
runner.assert_eq_string(paths.join("/a", "b"), "/a/b", "join basic")
runner.assert_eq_string(paths.join("/a/", "b"), "/a/b", "join trailing slash")
runner.assert_eq_string(paths.join("/a", "/b"), "/a/b", "join leading slash")
// exists / is_dir against a known dir
runner.assert_eq_bool(paths.exists("/tmp"), true, "/tmp exists")
runner.assert_eq_bool(paths.is_dir("/tmp"), true, "/tmp is dir")
runner.assert_eq_bool(paths.exists("/this-does-not-exist-zzz"), false, "missing path → false")
runner.report()
end main
|