Mercurial > prosody-hg
comparison spec/util_paths_spec.lua @ 11181:d2b19560150d
util.paths: Add some tests
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sat, 17 Oct 2020 19:00:16 +0200 |
| parents | |
| children | bab8d01e139a |
comparison
equal
deleted
inserted
replaced
| 11180:ab820b2ad199 | 11181:d2b19560150d |
|---|---|
| 1 local sep = package.config:match("(.)\n"); | |
| 2 describe("util.paths", function () | |
| 3 local paths = require "util.paths"; | |
| 4 describe("#join()", function () | |
| 5 it("returns single component as-is", function () | |
| 6 assert.equal("foo", paths.join("foo")); | |
| 7 end); | |
| 8 it("joins paths", function () | |
| 9 assert.equal("foo"..sep.."bar", paths.join("foo", "bar")) | |
| 10 end); | |
| 11 it("joins longer paths", function () | |
| 12 assert.equal("foo"..sep.."bar"..sep.."baz", paths.join("foo", "bar", "baz")) | |
| 13 end); | |
| 14 it("joins even longer paths", function () | |
| 15 assert.equal("foo"..sep.."bar"..sep.."baz"..sep.."moo", paths.join("foo", "bar", "baz", "moo")) | |
| 16 end); | |
| 17 end) | |
| 18 | |
| 19 describe("#glob_to_pattern()", function () | |
| 20 it("works", function () | |
| 21 assert.equal("^thing.%..*$", paths.glob_to_pattern("thing?.*")) | |
| 22 end); | |
| 23 | |
| 24 end) | |
| 25 describe("#resolve_relative_path()", function () | |
| 26 it("returns absolute paths as-is", function () | |
| 27 if sep == "/" then | |
| 28 assert.equal("/tmp/path", paths.resolve_relative_path("/run", "/tmp/path")); | |
| 29 elseif sep == "\\" then | |
| 30 assert.equal("C:\\Program Files", paths.resolve_relative_path("A:\\", "C:\\Program Files")); | |
| 31 end | |
| 32 end); | |
| 33 it("resolves relative paths", function () | |
| 34 if sep == "/" then | |
| 35 assert.equal("/run/path", paths.resolve_relative_path("/run", "path")); | |
| 36 end | |
| 37 end); | |
| 38 end) | |
| 39 end) |
