Software /
code /
prosody
Annotate
spec/util_paths_spec.lua @ 11517:f7275c2c58fa
mod_c2s: Fix traceback if session was destroyed while opening stream (thanks Ge0rG)
Could happen with the 'opportunistic_writes' setting, since then the
stream opening is written directly to the socket, which can in turn
trigger session destruction if the socket somehow got closed just after
the other sent their stream header.
Error happens later when it tries to `hosts[session.host == nil].events`
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 14 Apr 2021 16:02:47 +0200 |
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) |