Commit Graph

503 Commits

Author SHA1 Message Date
Valentin Lorentz f83f2a4edf Make all tests pass with Unreal (minus service tests) 2021-07-02 21:41:35 +02:00
Valentin Lorentz 2d2e788275 Start adding support for Unreal
Not all tests pass yet, Unreal uses the protocol in ways we did not anticipate.
2021-07-01 23:10:37 +02:00
Valentin Lorentz cd58d14608 README.md: fix typos 2021-07-01 17:33:58 +02:00
Valentin Lorentz 2972706ca6 Add a 'services' mark, to allow disabling tests that depend on them. 2021-07-01 17:17:59 +02:00
Valentin Lorentz 26a0245a6a Add tests for the draft bot mode. 2021-07-01 16:44:48 +02:00
Valentin Lorentz 98824a4abd Move the complex list of selectors from .github/workflows/* to the Makefile 2021-06-28 20:43:52 +02:00
Shivaram Lingamneni cccb937068
Merge pull request #59 from ergochat/master
merge in a new ergo regression test
2021-06-28 01:48:18 -04:00
Shivaram Lingamneni 50cd718871 explicitly request sasl cap in new test 2021-06-28 00:23:26 -04:00
Shivaram Lingamneni 342ffcbdbe enable run_services for new test 2021-06-28 00:18:39 -04:00
Shivaram Lingamneni e340f86468
Merge pull request #19 from ergochat/issue1696.1
regression test for ergochat/ergo#1696
2021-06-27 16:38:02 -04:00
Valentin Lorentz 3d2399f62e Run Atheme with Charybdis, to enable tests depending on SASL 2021-06-27 21:19:34 +02:00
Valentin Lorentz 76db5758e9 Remove ircd-seven
A future commit will need Chary and its subclasses to use SASL,
but ircd-seven has a different config to use SASL.

And ircd-seven is not used anymore AFAICT, and won't be getting any updates,
so I don't want to bother.
2021-06-27 21:19:34 +02:00
Valentin Lorentz c5037e8ec9 Make AthemeController a collaborator instead of a mixin
It makes the inheritence less messy and avoids a mypy hack.

This will also allow configuring which service package an ircd controller
uses, instead of hardcoding it in the inheritence DAG.
2021-06-27 16:45:43 +02:00
Valentin Lorentz 7ee3c562d1 Run Atheme with InspIRCd, to enable tests depending on SASL 2021-06-27 16:45:43 +02:00
Valentin Lorentz 48eeeb7312 Always request the 'sasl' cap before using AUTHENTICATE
InspIRCd ignores AUTHENTICATE when the cap is not negotiated.
2021-06-27 14:38:54 +02:00
Valentin Lorentz 7ac4d7f80f Use `getRegistrationMessage()` when relevant
It's an alias for
`filter_pred=lambda m: m.command != "NOTICE", synchronize=False`
2021-06-27 14:38:54 +02:00
Valentin Lorentz b3d775f0d6 getMessages: Raise an error when forgetting to synchronize=False
Instead of hanging forever.

Hopefully there shouldn't be any false positive.
2021-06-27 14:38:54 +02:00
Valentin Lorentz cc8b9748a7 Always request the 'sasl' cap before using AUTHENTICATE
It's required by InspIRCd.

This commit also adds a check so we don't forget it when testing
locally only with Ergo.
2021-06-27 14:38:54 +02:00
Valentin Lorentz 829edddeb8 Remove some Ergo-specific assumptions.
We need to remove them before we can start running these tests
on Inspircd.
2021-06-27 14:38:54 +02:00
Shivaram Lingamneni 65b479c609 add regression test for ergochat/ergo#1696 2021-06-27 04:41:30 -04:00
Valentin Lorentz 6458586179 Make find_hostname_and_port its own function
So it can be used to generate multiple ports, which will be needed
to link services.
2021-06-27 00:27:48 +02:00
Valentin Lorentz eef07da56a cases: Stop ignoring the 'msg' parameter in assert* methods 2021-06-27 00:23:21 +02:00
Valentin Lorentz 60e6c013b2 Fix mypy error 2021-06-26 22:11:47 +02:00
Valentin Lorentz 14ee59ca84 mypy: silence import warnings 2021-06-26 20:34:01 +02:00
Valentin Lorentz a29e46c17a Add test for account tag on INVITE messages.
This will catch issues like https://github.com/solanum-ircd/solanum/issues/166
(when we have registration support for solanum)
2021-06-26 18:44:55 +02:00
Valentin Lorentz 6f68a0d601 Hide irrelevant frames on pytest failures
It makes failures easier to read, by showing only the relevant tests
instead of the helper functions.

https://doc.pytest.org/en/latest/example/simple.html#writing-well-integrated-assertion-helpers
2021-06-26 18:37:44 +02:00
Shivaram Lingamneni 50b36f281d ergo: remove additional-nick-limit 2021-06-18 18:43:45 -04:00
Shivaram Lingamneni a7d7436929
Merge pull request #54 from ergochat/ergo
rename Oragono to Ergo
2021-05-28 17:38:56 -04:00
Shivaram Lingamneni c3b7663e06 fix ergochat/ergo repository name 2021-05-27 10:17:28 -04:00
Shivaram Lingamneni 7be29ad801 rename Oragono to Ergo 2021-05-27 00:07:32 -04:00
Shivaram Lingamneni 6bdfdf58b2 first pass at renaming oragono to ergo 2021-05-26 16:02:22 -04:00
Shivaram Lingamneni db0c64fa30 remove draft/resume-0.5 tests 2021-05-19 08:49:49 +02:00
Shivaram Lingamneni 729b7cb8d8 regression test for oragono/oragono#1642 2021-05-05 22:08:22 +02:00
Valentin Lorentz 322cb7ae26 Skip testQuitErrors on charybdis, it's also very flaky 2021-04-18 09:21:50 +02:00
Valentin Lorentz 277f383e02 Skip testQuitErrors on ircd-seven, it's very flaky 2021-04-18 09:21:50 +02:00
Valentin Lorentz cfe0b0d3dd Add test for message matching commands
+ fix a bug in tested code
+ change conftest.py to allow missing --controller arg (which is
  an UI improvement, as it allows using 'pytest --help' now)
2021-04-18 09:21:27 +02:00
Shivaram Lingamneni 498b67ae96 Remove CHATHISTORY * and znc.in/playback *self
CHATHISTORY * is being removed here:

https://github.com/ircv3/ircv3-specifications/pull/450

znc.in/playback *self was an Oragono extension that didn't catch on:

https://github.com/oragono/oragono/issues/1205
2021-04-17 23:26:06 +02:00
Valentin Lorentz 1846794466 Remove warning about Sopel
https://github.com/sopel-irc/sopel/issues/946 seems to be fixed
2021-04-17 22:28:58 +02:00
Valentin Lorentz 5e622a34d3 test_buffering: add support for ERR_INPUTTOOLONG 2021-03-05 20:29:44 +01:00
Valentin Lorentz 4d2976c7e6 Use TCP_NODELAY on the socket, it may be better to make test_buffering relevant 2021-03-05 20:21:48 +01:00
Valentin Lorentz c58c238875 Add a set of buffering/truncation test cases.
Also checks for UTF8ONLY
2021-03-05 19:30:30 +01:00
Shivaram Lingamneni a0bceabf80 fix the build by upgrading go 2021-03-05 19:30:15 +01:00
Shivaram Lingamneni 100b53fb18 test for Oragono disallowing truncation 2021-03-05 19:30:15 +01:00
Valentin Lorentz 6d74a06327 always negotiate batch with labeled-response, it's required by the spec 2021-03-04 17:38:50 +01:00
Shivaram Lingamneni 5b82b9b3d2
Merge pull request #46 from slingamn/inputtoolong.1
allow ERR_INPUTTOOLONG if a PRIVMSG cannot be relayed
2021-03-03 17:11:36 -05:00
Shivaram Lingamneni 0f2445c1eb review fixes 2021-03-03 14:37:03 -05:00
Shivaram Lingamneni 74f40ad23d allow ERR_INPUTTOOLONG if a PRIVMSG cannot be relayed 2021-03-03 13:57:11 -05:00
Valentin Lorentz 1e0de7aefb assertMessageMatch: Add pattern-matching on tags, and start using it. 2021-03-01 21:59:50 +01:00
Valentin Lorentz 3c2db1531a register: Update error name to COMPLETE_CONNECTION_REQUIRED to follow the spec 2021-02-28 23:34:23 +01:00
Valentin Lorentz 3f231403ba Use assertMessageMatch whenever possible, and generalize listMatch to accept regexps
it's stricter this way + hopefully more readable and better error msgs
2021-02-28 23:22:31 +01:00