Commit Graph

576 Commits

Author SHA1 Message Date
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
Val Lorentz f86e11a288
Use a better / more detailed reporter on Github PRs 2021-09-05 21:59:04 +02:00
Valentin Lorentz 3630a25c11 Add ngircd controller 2021-09-05 17:45:09 +02:00
Val Lorentz 50b253fda8
Fix some mode tests not being collected because of their class name (#112)
* Fix some mode tests not being collected because of their class name

* testBan: Remove unnecessary dependency on echo-message (fixes support for servers without CAP LS)
2021-09-04 21:07:17 +02:00
Val Lorentz 5e33a82af6
Split irctest/server_tests/mode.py into a subpackage
It was getting too big
2021-09-04 20:26:14 +02:00
Valentin Lorentz 8bc9c5b057 Exclude ircu2 and fill in the spec 2021-09-04 20:18:53 +02:00
Valentin Lorentz e03bb4734d Add test testEmptyRealname. 2021-09-04 20:18:53 +02:00
Valentin Lorentz cc3d70c7d3 testQuitErrors: Make it slightly less flaky with solanum? 2021-09-04 20:02:49 +02:00
Valentin Lorentz ff0d795485 Add TARGMAX test 2021-09-04 20:02:20 +02:00
Val Lorentz 23c7c1642b
exhaustive testing of Modern's WHOIS spec (#104)
* Add testWhoisNumerics, to check Modern exhaustively covers known numerics

* ircu2: Workaround for server name in testWhoisNumerics.

* testWhoisUser: Work around ircu2 restrictions on nick and username

* testWhoisNumerics: Add variant with authenticated user

* testWhoisNumerics: Add support for RPL_AWAY and RPL_WHOISSPECIAL

* testWhoisNumerics: Add variant where the WHOIS sender opers up first

* testWhoisUser: Also test with targets

* inspircd: Fix oper configuration

* Fix RPL_WHOISACTUALLY matching for Unreal.
2021-08-29 16:38:38 +02:00
Valentin Lorentz 03a401f911 Add tests for PING and PONG 2021-08-28 18:54:35 +02:00
Valentin Lorentz 15d21f4ee4 Exhaustively test AWAY. 2021-08-28 18:54:13 +02:00
Valentin Lorentz 6106fc3b98 invite & kick: update links to Modern 2021-08-26 21:15:57 +02:00
Val Lorentz 44ce324c7c
kick: Exhaustive implementation of the Modern spec + honor TARGMAX in testDoubleKickMessages (#100) 2021-08-26 21:05:23 +02:00
Val Lorentz a9e6605640
Add exhaustive testing of INVITE. (#87)
* Add exhaustive testing of INVITE.

Only tested with Modern, because no one implements the RFC syntax.

* Mark testInviteUnopped* as strict tests.

* Exclude testInviteInviteOnlyModern on Plexus4

* Add test for ERR_USERONCHANNEL.
2021-08-26 21:04:45 +02:00
Shivaram Lingamneni 125a1cc106
Merge pull request #106 from slingamn/scram_config
add advertise-scram in ergo controller
2021-08-25 18:59:30 -04:00
Shivaram Lingamneni 7e2940d820 add advertise-scram in ergo controller 2021-08-25 18:37:05 -04:00
Valentin Lorentz 7d7df34fe5 bahamut: Disable throttling
Config marks all clients as throttling-exempt, but they sometimes
reconnect to quickly for this exemption to kick in.
2021-08-13 22:53:56 +02:00
Valentin Lorentz de66606b4f Fix excessive timeout 2021-08-13 08:58:38 +02:00
Valentin Lorentz 57a08a0a57 Deselect testKeyValidation[empty] for ircu2 2021-08-11 22:46:54 +02:00
Valentin Lorentz 3cca1ce29e testKeyValidation: Add checks for long and empty keys 2021-08-11 22:46:54 +02:00
Valentin Lorentz 3fb8cbc3ff testKeyValidation: Check format of ERR_INVALIDMODEPARAM. 2021-08-11 22:46:54 +02:00
Valentin Lorentz 6641b3245f Split user_commands.py by command
For consistency with channel commands.
2021-08-11 20:46:10 +02:00
Valentin Lorentz 7a8acb44cf Split channel_operations.py by command.
It was messy.
2021-08-11 20:46:10 +02:00
Valentin Lorentz 9b02222c4c Remove 'test_' prefix for all file names.
It's redundant.
2021-08-11 19:34:33 +02:00
Valentin Lorentz fe977cf361 Try to make bahamut tests less flaky 2021-08-11 18:39:29 +02:00
Valentin Lorentz c9911da9b8 testDoubleKickMessages: Also test with a single chan 2021-08-11 18:33:05 +02:00
Valentin Lorentz 1a66d706e7 plexus4: Update to latest commit (this should fix the CI) 2021-08-11 18:23:23 +02:00
Svante Bengtson f61e3ee608 Typo, solanum refers to chary folder 2021-08-10 20:18:54 +02:00