prosody/spec/util_paths_spec.lua
Kim Alvefur c812a98068 util_paths_spec: Trim trailing white space
And add spacing between describe() blocks
2020-10-17 19:24:44 +02:00

39 lines
1.3 KiB
Lua

local sep = package.config:match("(.)\n");
describe("util.paths", function ()
local paths = require "util.paths";
describe("#join()", function ()
it("returns single component as-is", function ()
assert.equal("foo", paths.join("foo"));
end);
it("joins paths", function ()
assert.equal("foo"..sep.."bar", paths.join("foo", "bar"))
end);
it("joins longer paths", function ()
assert.equal("foo"..sep.."bar"..sep.."baz", paths.join("foo", "bar", "baz"))
end);
it("joins even longer paths", function ()
assert.equal("foo"..sep.."bar"..sep.."baz"..sep.."moo", paths.join("foo", "bar", "baz", "moo"))
end);
end)
describe("#glob_to_pattern()", function ()
it("works", function ()
assert.equal("^thing.%..*$", paths.glob_to_pattern("thing?.*"))
end);
end)
describe("#resolve_relative_path()", function ()
it("returns absolute paths as-is", function ()
if sep == "/" then
assert.equal("/tmp/path", paths.resolve_relative_path("/run", "/tmp/path"));
elseif sep == "\\" then
assert.equal("C:\\Program Files", paths.resolve_relative_path("A:\\", "C:\\Program Files"));
end
end);
it("resolves relative paths", function ()
if sep == "/" then
assert.equal("/run/path", paths.resolve_relative_path("/run", "path"));
end
end);
end)
end)