Software /
code /
prosody
Annotate
spec/util_poll_spec.lua @ 13357:f424c9f1460b
mod_mam: Use for loop in metadata query
Some storage drivers will perform cleanup after the last iteration, but
if only one step is taken this might be delayed until the garbage
collector gets to it.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 26 Nov 2023 22:58:11 +0100 |
parent | 12400:728d1c1dc7db |
rev | line source |
---|---|
12400 | 1 describe("util.poll", function() |
2 local poll; | |
3 setup(function() | |
4 poll = require "util.poll"; | |
5 end); | |
6 it("loads", function() | |
7 assert.is_table(poll); | |
8 assert.is_function(poll.new); | |
9 assert.is_string(poll.api); | |
9316
4aa522b9e1c4
util.poll: Test that it loads after being compiled
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 end); |
12400 | 11 describe("new", function() |
12 local p; | |
13 setup(function() | |
14 p = poll.new(); | |
15 end) | |
16 it("times out", function () | |
17 local fd, err = p:wait(0); | |
18 assert.falsy(fd); | |
19 assert.equal("timeout", err); | |
20 end); | |
21 it("works", function() | |
22 -- stdout should be writable, right? | |
23 assert.truthy(p:add(1, false, true)); | |
24 local fd, r, w = p:wait(1); | |
25 assert.is_number(fd); | |
26 assert.is_boolean(r); | |
27 assert.is_boolean(w); | |
28 assert.equal(1, fd); | |
29 assert.falsy(r); | |
30 assert.truthy(w); | |
31 assert.truthy(p:del(1)); | |
32 end); | |
33 end) | |
9316
4aa522b9e1c4
util.poll: Test that it loads after being compiled
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
34 end); |
4aa522b9e1c4
util.poll: Test that it loads after being compiled
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
35 |