Software /
code /
prosody
Annotate
spec/util_paths_spec.lua @ 11369:87105a9a11df
util.datamanager: Support iterating over any file extension
The 'typ' argument to all other functions is the actual file extension,
but not here for some reason.
May need this for iterating over the .bin files created by
mod_http_file_share in the future.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 07 Feb 2021 19:23:33 +0100 |
parent | 11182:bab8d01e139a |
rev | line source |
---|---|
11181 | 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 end) | |
11182
bab8d01e139a
util_paths_spec: Trim trailing white space
Kim Alvefur <zash@zash.se>
parents:
11181
diff
changeset
|
24 |
11181 | 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) |