<feed xmlns='http://www.w3.org/2005/Atom'>
<title>~irc/github.com/solanum-ircd/solanum.git/tests, branch main</title>
<subtitle>https://github.com/solanum-ircd/solanum</subtitle>
<id>https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/atom/tests?h=main</id>
<link rel='self' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/atom/tests?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/'/>
<updated>2026-07-26T19:14:54Z</updated>
<entry>
<title>Only init solanum once in tests/sasl_abort1.c</title>
<updated>2026-07-26T19:14:54Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-07-13T23:21:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=115b1e2e8c3d94a490cdcb0fc1f7a4448cefc6bf'/>
<id>urn:sha1:115b1e2e8c3d94a490cdcb0fc1f7a4448cefc6bf</id>
<content type='text'>
Calling solanum_main multiple times results in loading every
core/autoload module multiple times (because the check for "is the
module already loaded" always returns "no" due to solanum_main clearing
the list of loaded modules before attempting the load). Init only once,
and use other code to ensure that UIDs are consistent instead by
resetting the counter and ensuring we free the clients with the old UIDs
at the end of each test run.
</content>
</entry>
<entry>
<title>Add sendto_list_local_* and sendto_monitor_with_capability</title>
<updated>2026-07-26T19:06:09Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-20T05:57:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=9f30e48726e9dadafed27aa9f40ead24dcde9fae'/>
<id>urn:sha1:9f30e48726e9dadafed27aa9f40ead24dcde9fae</id>
<content type='text'>
These are needed for METADATA support, and sendto_monitor was refactored
into a common sendto_list_local_internal method used by all of the
newly-added functions as well. Test cases were also added to excercise
the new functions.
</content>
</entry>
<entry>
<title>Clean up outgoing_response_info on parse end</title>
<updated>2026-07-04T22:51:10Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-07-04T21:46:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=a4998b5e5b4ba38bbc5e5baf0a0962e57c011207'/>
<id>urn:sha1:a4998b5e5b4ba38bbc5e5baf0a0962e57c011207</id>
<content type='text'>
Failing to set outgoing_response_info to NULL after finishing parsing a
command means any future commands that do *not* have a label tag will
incorrectly inherit that labeled response context. This can cause, among
other things, crashes when sending an unlabeled remote command after a
labeled remote command.

Also add a regression test for this behaviour.
</content>
</entry>
<entry>
<title>Address review comments</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-07-03T17:20:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=ed1711fdda8f79dd0bffe55b8afe692725b31c9e'/>
<id>urn:sha1:ed1711fdda8f79dd0bffe55b8afe692725b31c9e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add tests for labeled-response</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-27T20:43:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=3f4986786dad22f856ecdf0123606ea50175cb2e'/>
<id>urn:sha1:3f4986786dad22f856ecdf0123606ea50175cb2e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Avoid spurious printfs in sasl_abort1</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-24T05:47:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=5e5a5c9e1d6477defbc6109f59307d90e5413ffd'/>
<id>urn:sha1:5e5a5c9e1d6477defbc6109f59307d90e5413ffd</id>
<content type='text'>
The TAP protocol doesn't allow extra stdout lines unless they're
commented (which these were not), and I don't see the value in printing
out every line we're munching, so instead use the new drain_client_sendq
function introduced in the previous commit to empty out the client's
sendq rather than these printf while loops.
</content>
</entry>
<entry>
<title>Test utility fixes and additions</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-20T06:39:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=20979d13bf9e827044646e6fe03b740ae115152a'/>
<id>urn:sha1:20979d13bf9e827044646e6fe03b740ae115152a</id>
<content type='text'>
- Add helper method to drain a client's sendq without asserting on any
  of its lines
- Add helper method to fetch a dictionary by name, as these are
  typically static linkage but could be useful for inspection or
  manipulation in tests
- Add helper method to run an event by name, as these are typically
  static linkage but could be useful to run during tests
- Make the cleanup_remote functions work properly by exiting the correct
  client with the correct parameters
- Add clients created by text utilities to relevant tracking variables
- New helper methods to create clients with IDs
- Fix return value of get_client_sendq to always be a char * (some cases
  previously returned const char *)
</content>
</entry>
<entry>
<title>Use posix-compliant shell syntax</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-24T05:35:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=063a94f7de9bb1b1797e8f0e0b2698601cc6c32a'/>
<id>urn:sha1:063a94f7de9bb1b1797e8f0e0b2698601cc6c32a</id>
<content type='text'>
Local dev env had /bin/sh aliased to /bin/bash but CI runs on Ubuntu
where /bin/sh is dash, and lacks array support. Debian is similar in
this regard, so ensure that the script works across any posix-compliant
shell rather than using bash-isms.
</content>
</entry>
<entry>
<title>Fix meson test</title>
<updated>2026-07-03T17:28:04Z</updated>
<author>
<name>Ryan Schmidt</name>
</author>
<published>2026-06-24T05:02:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=6201da142c2263e14ae732aee74bb434b6beaec7'/>
<id>urn:sha1:6201da142c2263e14ae732aee74bb434b6beaec7</id>
<content type='text'>
A new custom build target sets up the runtime dir the way the
testsuite expects it so that it can run properly. Also fix the help
script as it was trying to treat a file as a symlink when it wasn't
which broke the new build target. Tests now also properly use the
TAP protocol in the meson build file, and fix a segfault in the
send1 tests that passes NULL to a function that previously assumed
that NULL would not be passed.
</content>
</entry>
<entry>
<title>build: add Meson buildsystem</title>
<updated>2026-03-17T22:39:01Z</updated>
<author>
<name>Valentin Lorentz</name>
</author>
<published>2026-03-15T00:46:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit.space/~irc/github.com/solanum-ircd/solanum.git/commit/?id=9a1ee1b64ed660164197e6362bcbedba2a9175ca'/>
<id>urn:sha1:9a1ee1b64ed660164197e6362bcbedba2a9175ca</id>
<content type='text'>
</content>
</entry>
</feed>
