annotate spec/util_envload_spec.lua @ 13461:c673ff1075bd

mod_posix: Move everything to util.startup This allows greater control over the order of events. Notably, the internal ordering between daemonization, initialization of libunbound and setup of signal handling is sensitive. libunbound starts a separate thread for processing DNS requests. If this thread is started before signal handling has been set up, it will not inherit the signal handlers and instead behave as it would have before signal handlers were set up, i.e. cause the whole process to immediately exit. libunbound is usually initialized on the first DNS request, usually triggered by an outgoing s2s connection attempt. If daemonization happens before signals have been set up, signals may not be processed at all.
author Kim Alvefur <zash@zash.se>
date Sat, 23 Mar 2024 20:48:19 +0100
parents 37f49d0ad22c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11489
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 describe("util.envload", function()
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 local envload = require "util.envload";
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 describe("envload()", function()
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 it("works", function()
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 local f, err = envload.envload("return 'hello'", "@test", {});
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 assert.is_function(f, err);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 local ok, ret = pcall(f);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 assert.truthy(ok);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 assert.equal("hello", ret);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 end);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 it("lets you pass values in and out", function ()
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 local f, err = envload.envload("return thisglobal", "@test", { thisglobal = "yes, this one" });
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 assert.is_function(f, err);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 local ok, ret = pcall(f);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 assert.truthy(ok);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 assert.equal("yes, this one", ret);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 end);
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 end)
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 -- TODO envloadfile()
37f49d0ad22c util.envload: Add basic test of envload()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 end)