Skip to content

Commit

Permalink
Enable WHO mask tests on Sable (#272)
Browse files Browse the repository at this point in the history
* Sable: Hide NickServ/ChanServ when running without services

They interfere with 'WHO *' as they are returned as matches

* Enable WHO mask tests on Sable

* Bump Sable
  • Loading branch information
progval authored May 4, 2024
1 parent 723991c commit 79223d3
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 24 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test-stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1106,7 +1106,7 @@ jobs:
uses: actions/checkout@v3
with:
path: sable
ref: fe337a036c3ab5f8548e2578b65568e628f4c32f
ref: b9deaa930c49f2939d9a584bedbfc3236da0d707
repository: Libera-Chat/sable
- name: Install rust toolchain
uses: actions-rs/toolchain@v1
Expand Down
33 changes: 19 additions & 14 deletions irctest/controllers/sable.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,20 +116,7 @@ def certs_dir() -> Path:
],
"alias_users": [
{
"nick": "ChanServ",
"user": "ChanServ",
"host": "services.",
"realname": "Channel services compatibility layer",
"command_alias": "CS"
},
{
"nick": "NickServ",
"user": "NickServ",
"host": "services.",
"realname": "Account services compatibility layer",
"command_alias": "NS"
}
%(services_alias_users)s
],
"default_roles": {
Expand Down Expand Up @@ -160,6 +147,23 @@ def certs_dir() -> Path:
}
"""

SERVICES_ALIAS_USERS = """
{
"nick": "ChanServ",
"user": "ChanServ",
"host": "services.",
"realname": "Channel services compatibility layer",
"command_alias": "CS"
},
{
"nick": "NickServ",
"user": "NickServ",
"host": "services.",
"realname": "Account services compatibility layer",
"command_alias": "NS"
}
"""

SERVER_CONFIG = """
{
"server_id": 1,
Expand Down Expand Up @@ -374,6 +378,7 @@ def run(
.strip(),
services_management_hostname=services_management_hostname,
services_management_port=services_management_port,
services_alias_users=SERVICES_ALIAS_USERS if run_services else "",
)

with self.open_file("configs/network.conf") as fd:
Expand Down
16 changes: 8 additions & 8 deletions irctest/server_tests/who.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ def _checkReply(self, reply, flags):
class WhoTestCase(BaseWhoTestCase, cases.BaseServerTestCase):
@cases.mark_specifications("Modern")
def testWhoStar(self):
if self.controller.software_name in ("Bahamut", "Sable"):
if self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -118,7 +118,7 @@ def testWhoStar(self):
)
@cases.mark_specifications("Modern")
def testWhoNick(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -148,7 +148,7 @@ def testWhoNick(self, mask):
ids=["username", "realname-mask", "hostname"],
)
def testWhoUsernameRealName(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -201,7 +201,7 @@ def testWhoRealNameSpaces(self):
)
@cases.mark_specifications("Modern")
def testWhoNickAway(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -235,7 +235,7 @@ def testWhoNickAway(self, mask):
)
@cases.mark_specifications("Modern")
def testWhoNickOper(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -274,7 +274,7 @@ def testWhoNickOper(self, mask):
)
@cases.mark_specifications("Modern")
def testWhoNickAwayAndOper(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -308,7 +308,7 @@ def testWhoNickAwayAndOper(self, mask):
@pytest.mark.parametrize("mask", ["#chan", "#CHAN"], ids=["exact", "casefolded"])
@cases.mark_specifications("Modern")
def testWhoChan(self, mask):
if "*" in mask and self.controller.software_name in ("Bahamut", "Sable"):
if "*" in mask and self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self._init()
Expand Down Expand Up @@ -632,7 +632,7 @@ def testWhoxNoAccount(self):
class WhoInvisibleTestCase(cases.BaseServerTestCase):
@cases.mark_specifications("Modern")
def testWhoInvisible(self):
if self.controller.software_name in ("Bahamut", "Sable"):
if self.controller.software_name in ("Bahamut",):
raise runner.OptionalExtensionNotSupported("WHO mask")

self.connectClient("evan", name="evan")
Expand Down
2 changes: 1 addition & 1 deletion workflows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ software:
name: Sable
repository: Libera-Chat/sable
refs:
stable: fe337a036c3ab5f8548e2578b65568e628f4c32f
stable: b9deaa930c49f2939d9a584bedbfc3236da0d707
release: null
devel: master
devel_release: null
Expand Down

0 comments on commit 79223d3

Please sign in to comment.