summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDirk Engling <erdgeist@erdgeist.org>2026-10-31 00:30:31 +0100
committerDirk Engling <erdgeist@erdgeist.org>2026-10-31 00:30:31 +0100
commit9a2d71c69518a0448940b8873051ac3a2ee37999 (patch)
tree81c12b19096eee6f449bfdae3a9bd6bf8379cade
parente9445a41e5cbb4f1a1091302efdf3e80d0d70c7f (diff)
Add test for new config params
-rw-r--r--tests/integration/test_config.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/integration/test_config.py b/tests/integration/test_config.py
new file mode 100644
index 0000000..1a84fa7
--- /dev/null
+++ b/tests/integration/test_config.py
@@ -0,0 +1,29 @@
1"""Settings the tracker has to accept, and still work with.
2
3An unrecognised key makes opentracker refuse to start, so a test that it
4comes up at all is a test that the key was understood.
5"""
6
7import unittest
8
9from harness import Tracker, TrackerTestCase, free_port
10
11
12class TcpWorkers(TrackerTestCase):
13 config = "listen.tcp.workers 2\n"
14
15 def test_the_tracker_serves_with_tcp_workers_asked_for(self):
16 self.assertEqual(self.tracker.announce(self.hash_for("tcpworkers"))[b"complete"], 1)
17
18
19class WorkersOnAListenStatement(unittest.TestCase):
20 def test_a_listen_statement_may_carry_a_worker_count(self):
21 """The option is read off the statement rather than inherited."""
22 second = free_port()
23 tracker = Tracker("listen.tcp 127.0.0.1:%d workers=2\n" % second)
24 try:
25 self.assertEqual(tracker.announce(b"listenopts\0\0\0\0\0\0\0\0\0\0")[b"complete"], 1)
26 complaints = tracker.stop()
27 self.assertEqual(complaints, [], "the tracker reported:\n" + "\n".join(complaints))
28 finally:
29 tracker._cleanup()