Commit Graph

604 Commits

Author SHA1 Message Date
Val Lorentz d24f0b4f12
Add support for Nefarious (#151) 2022-04-10 11:37:35 +02:00
Valentin Lorentz ca9ec1733c Fix comment 2022-04-10 11:31:26 +02:00
Valentin Lorentz a7d3fadd8b Fix crash on scheduled workflows 2022-04-10 11:08:59 +02:00
Val Lorentz edf3e5904b
Produce a dashboard website after running tests (#152) 2022-04-10 10:40:39 +02:00
Shivaram Lingamneni 3083aeeb24
fix processing of multiline CAP LS 302 output (#153)
connectClient implicitly assumed that the CAP LS 302 output would be
a single registration message. This caused incorrect skipping of some tests
with `skip_if_cap_nak=True`, for example
RegisterEmailVerifiedTestCase.testAfterConnect on Ergo.

Technically there is no need for connectClient to send CAP LS before CAP REQ;
however, this provides additional test coverage for the syntactic correctness
of the CAP LS output in multiple server configurations, so we might as well
keep it.
2022-04-10 08:39:30 +02:00
Valentin Lorentz ebd7edcc74 workflows: Replace spaces from artifact names
It made them impractical to use as file names.
2022-04-09 08:59:50 +02:00
Val Lorentz 9a19416731
INVITE: Fix misunderstanding of the RFCs (#148)
They make the first argument of numerics implicit, so there is actually
no difference with Modern
2022-03-31 15:53:51 +02:00
Valentin Lorentz f52f21897b Bump Go version 2022-03-30 20:32:56 +02:00
Valentin Lorentz 3f483243d9 Minor readability improvement 2022-03-27 17:07:29 +02:00
Val Lorentz 491f92ca60
Use proot with unreal, to make it parallelizable (#146) 2022-03-23 21:26:41 +01:00
Valentin Lorentz 7608ea5145 Fix flaky LUSERS tests on Unreal 2022-03-20 22:07:07 +01:00
Val Lorentz 256a8641ec
Add test for multi-target WHOWAS (#141)
* Add test for multi-target WHOWAS

I don't think anyone implements it; let's see

* Skip on Bahamut
2022-03-20 11:36:51 +01:00
Val Lorentz f606c075f7
Add tests for error cases of WHOWAS. (#139) 2022-03-19 22:12:25 +01:00
Val Lorentz b63ead9546
Bump versions used on the CI. (#140) 2022-03-19 21:39:26 +01:00
Val Lorentz 7b38c2be8a
Add tests for WHOWAS. (#138) 2022-03-19 20:20:50 +01:00
Valentin Lorentz c47b057546 Fix inconsistent arg order 2022-03-19 16:53:14 +01:00
Valentin Lorentz 2af62461bc Add test for mismatch on both command and param 2022-03-19 16:34:39 +01:00
Val Lorentz 69c5dca4b9
Add client tests for SASL with non-ASCII passwords (#137) 2022-03-19 16:09:27 +01:00
Val Lorentz ee8f60d6c2
Add test for ISUPPORT PREFIX. (#128) 2022-03-09 20:01:34 +01:00
Valentin Lorentz 8356ace014 Shorten ListRemainder's repr() when possible. 2022-03-05 10:12:09 +01:00
Valentin Lorentz 2a4e71eccd patma: Fix inconsistencies between ANYSTR and AnyOptStr 2022-03-05 10:12:09 +01:00
Valentin Lorentz 66c457f6ce patma: Fix repr() inconsistencies and add tests 2022-03-05 10:12:09 +01:00
Shivaram Lingamneni 7e112359a2
secret channel test (#135)
* silent.py tests for channels with mode +s appearing in LIST only when the user is connected to that channel

* Added assertions for exact content of lines with command RPL_LIST and checks for exact number of RPL_LIST replies

* fix linter errors

* only validate the first two parameters of RPL_LIST

* rename to secret channel test, add citation

* ignore ngircd pseudo-channel

* attempt to fix charybdis/solanum and ircu issues

* review fixes

Co-authored-by: William Rehwinkel <willrehwinkel@gmail.com>
2022-03-04 21:58:05 +01:00
Val Lorentz da005d7d24
Add tests for WHOX. (#131) 2022-02-21 21:43:22 +01:00
Valentin Lorentz 79c65cf248 Generalize ANYSTR to ListRemainder
So it can match specific strings and have a minimum length.
This can be used to match ISUPPORT-like messages.
2022-02-19 11:55:03 +01:00
Valentin Lorentz d34175d6a8 Fix message matching on empty prefix/params/tags/... 2022-02-19 11:54:44 +01:00
Valentin Lorentz 6b1084face Add support for pytest 7.0.0 2022-02-04 20:48:28 +01:00
Val Lorentz 1371979ccd
lusers: Add a variant that ircu2 and snircd can pass + add stricter tests (#126) 2022-01-15 00:19:58 +01:00
Val Lorentz 88a8f8ad8d
Add tests for INFO (#121)
* Add tests for INFO

* Workaround remote INFO being oper-only on some ircds

* Skip testInfoNosuchserver on Ergo

* info: Mark tests with target as deprecated.
2022-01-10 23:55:42 +01:00
Val Lorentz 255ef1e469
Add tests for the HELP and HELPOP commands (#117)
* Add tests for the HELP and HELPOP commands

* Make testHelpUnknownSubject accept lowercase

* Add support for Hybrid and Plexus4's normalization
2022-01-10 23:55:24 +01:00
Shivaram Lingamneni cac4428cbd
regression test for ergochat/ergo#1898 (#130) 2022-01-10 23:22:46 +01:00
Shivaram Lingamneni 8240cd95cf
regression test for ergochat/ergo#1876 (#125) 2022-01-10 21:35:17 +01:00
Shivaram Lingamneni e8486913a0
workflows: allow go version to float (#129) 2022-01-02 21:54:14 +01:00
Valentin Lorentz c826dd6c2e Bump Go version used to build Ergo 2022-01-02 12:40:24 +01:00
Val Lorentz 6c393c4e00
Add tests for WHO (#122)
* Add tests for WHO

* Make the mask in RPL_ENDOFWHO case-insensitive + skip test when there is a space in the mask

* Remove 'o' flag of WHO, it's not consistently implemented

* Skip matches on username and realname (for now?)

* Add workarounds from irc2 and ircu2.

* Add test for 'WHO *'.

* Exclude mask tests in test_who.py for Bahamut
2021-12-23 17:15:10 +01:00
Val Lorentz 05e78802ca
Add support for Unreal 6 (#123)
List of issues we had:
 
* echo wallops missing `!user@host` [wallops: Send a full NUH as prefix in echoed WALLOPS unrealircd/unrealircd#186](https://github.com/unrealircd/unrealircd/pull/186)
* RPL_MONONLINE is (re)sent on nick case change - https://bugs.unrealircd.org/view.php?id=6013
* MONITOR accepts masks - https://bugs.unrealircd.org/view.php?id=6014
* KICK doesn't support multiple channels anymore, despite unchanged TARGMAX - https://bugs.unrealircd.org/view.php?id=6015
2021-12-19 00:45:51 +01:00
Valentin Lorentz 16533de157 Fix invalid nick 2021-12-10 17:14:26 +01:00
Shivaram Lingamneni d29c0035e6 test that ERR_UNKNOWNCOMMAND is labeled
If an invalid command is sent with a valid label, it should receive
ERR_UNKNOWNCOMMAND with a label (comparable to other error responses).
2021-12-03 10:15:32 +01:00
Valentin Lorentz 18befc9e96 inspircd: Increase limit of connections on insp4
There used to be no limit by default, but 460220fbf5 set it to 3.
2021-11-25 20:32:14 +01:00
Val Lorentz 2684e7edb7
Enable services tests for hybrid and plexus on the CI (#120)
* Enable services tests for hybrid and plexus on the CI

* Workaround the broken Github CI's host config
2021-11-20 12:15:07 +01:00
Valentin Lorentz b895539bdd Update links to WHOIS spec. 2021-11-12 22:34:58 +01:00
Valentin Lorentz e89584b28e Make black ignore irctest/scram/ 2021-11-12 22:34:48 +01:00
Valentin Lorentz 9ade524447 Bump Limnoria version to make it pass tests 2021-11-06 22:55:01 +01:00
Valentin Lorentz 39587c3c49 Add testBanList 2021-11-06 09:49:12 +01:00
Valentin Lorentz 3b96b5992c sts: Don't send the port on secure connections 2021-11-06 09:48:05 +01:00
Valentin Lorentz 59a8a3e270 Make pytest show the diff between assertion operands.
Closes GH-118.
2021-11-01 09:28:51 +01:00
Valentin Lorentz 144c3a04b4 Don't hardcode the Python version used by pre-commit 2021-11-01 09:28:14 +01:00
Val Lorentz 5e4ae7c999
Add tests for WALLOPS (#109)
* Add tests for WALLOPS

* Add perms on plexus/hybrid, skip on ergo, laxer matching for ircu2

* Fix again for irc2 and ircu2

* Servers MAY send WALLOPS only to operators.
2021-09-19 15:33:31 +02:00
Valentin Lorentz 29bfb064e9 rmeove dead code 2021-09-11 00:32:10 +02:00
Shivaram Lingamneni 33f0702c26 fix some tests not being discovered due to their class names
Follow up from #112
2021-09-10 08:46:25 +02:00