annotate spec/core_configmanager_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 8ea685ec0979
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
1
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
2 local configmanager = require "core.configmanager";
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
3
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
4 describe("core.configmanager", function()
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
5 describe("#get()", function()
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
6 it("should work", function()
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
7 configmanager.set("example.com", "testkey", 123);
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
8 assert.are.equal(123, configmanager.get("example.com", "testkey"), "Retrieving a set key");
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
9
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
10 configmanager.set("*", "testkey1", 321);
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
11 assert.are.equal(321, configmanager.get("*", "testkey1"), "Retrieving a set global key");
10495
8ea685ec0979 configmanager tests: Split long line
Matthew Wild <mwild1@gmail.com>
parents: 9168
diff changeset
12 assert.are.equal(321, configmanager.get("example.com", "testkey1"),
8ea685ec0979 configmanager tests: Split long line
Matthew Wild <mwild1@gmail.com>
parents: 9168
diff changeset
13 "Retrieving a set key of undefined host, of which only a globally set one exists"
8ea685ec0979 configmanager tests: Split long line
Matthew Wild <mwild1@gmail.com>
parents: 9168
diff changeset
14 );
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
15
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
16 configmanager.set("example.com", ""); -- Creates example.com host in config
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
17 assert.are.equal(321, configmanager.get("example.com", "testkey1"), "Retrieving a set key, of which only a globally set one exists");
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
18
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
19 assert.are.equal(nil, configmanager.get(), "No parameters to get()");
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
20 assert.are.equal(nil, configmanager.get("undefined host"), "Getting for undefined host");
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
21 assert.are.equal(nil, configmanager.get("undefined host", "undefined key"), "Getting for undefined host & key");
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
22 end);
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
23 end);
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
24
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
25 describe("#set()", function()
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
26 it("should work", function()
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
27 assert.are.equal(false, configmanager.set("*"), "Set with no key");
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
28
9168
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
29 assert.are.equal(true, configmanager.set("*", "set_test", "testkey"), "Setting a nil global value");
29de7ad20250 spec: Correct order of arguments to asserts in configmanager tests
Kim Alvefur <zash@zash.se>
parents: 8236
diff changeset
30 assert.are.equal(true, configmanager.set("*", "set_test", "testkey", 123), "Setting a global value");
8236
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
31 end);
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
32 end);
4878e4159e12 Port tests to the `busted` test runner
Waqas Hussain <waqas20@gmail.com>
parents:
diff changeset
33 end);