aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/cogs/information.py6
-rw-r--r--bot/cogs/reminders.py10
-rw-r--r--bot/cogs/verification.py8
-rw-r--r--bot/decorators.py2
-rw-r--r--bot/utils/checks.py4
-rw-r--r--tests/bot/utils/test_checks.py36
6 files changed, 33 insertions, 33 deletions
diff --git a/bot/cogs/information.py b/bot/cogs/information.py
index 5b132a469..581b3a227 100644
--- a/bot/cogs/information.py
+++ b/bot/cogs/information.py
@@ -15,7 +15,7 @@ from bot import constants
from bot.bot import Bot
from bot.decorators import in_whitelist
from bot.pagination import LinePaginator
-from bot.utils.checks import InWhitelistCheckFailure, cooldown_with_role_bypass, without_role_check
+from bot.utils.checks import InWhitelistCheckFailure, cooldown_with_role_bypass, has_no_roles_check
from bot.utils.time import time_since
log = logging.getLogger(__name__)
@@ -198,12 +198,12 @@ class Information(Cog):
user = ctx.author
# Do a role check if this is being executed on someone other than the caller
- elif user != ctx.author and await without_role_check(ctx, *constants.MODERATION_ROLES):
+ elif user != ctx.author and await has_no_roles_check(ctx, *constants.MODERATION_ROLES):
await ctx.send("You may not use this command on users other than yourself.")
return
# Non-staff may only do this in #bot-commands
- if await without_role_check(ctx, *constants.STAFF_ROLES):
+ if await has_no_roles_check(ctx, *constants.STAFF_ROLES):
if not ctx.channel.id == constants.Channels.bot_commands:
raise InWhitelistCheckFailure(constants.Channels.bot_commands)
diff --git a/bot/cogs/reminders.py b/bot/cogs/reminders.py
index d7357e3fa..6806f2889 100644
--- a/bot/cogs/reminders.py
+++ b/bot/cogs/reminders.py
@@ -15,7 +15,7 @@ from bot.bot import Bot
from bot.constants import Guild, Icons, MODERATION_ROLES, POSITIVE_REPLIES, Roles, STAFF_ROLES
from bot.converters import Duration
from bot.pagination import LinePaginator
-from bot.utils.checks import with_role_check, without_role_check
+from bot.utils.checks import has_any_role_check, has_no_roles_check
from bot.utils.messages import send_denial
from bot.utils.scheduling import Scheduler
from bot.utils.time import humanize_delta
@@ -117,9 +117,9 @@ class Reminders(Cog):
If mentions aren't allowed, also return the type of mention(s) disallowed.
"""
- if await without_role_check(ctx, *STAFF_ROLES):
+ if await has_no_roles_check(ctx, *STAFF_ROLES):
return False, "members/roles"
- elif await without_role_check(ctx, *MODERATION_ROLES):
+ elif await has_no_roles_check(ctx, *MODERATION_ROLES):
return all(isinstance(mention, discord.Member) for mention in mentions), "roles"
else:
return True, ""
@@ -240,7 +240,7 @@ class Reminders(Cog):
Expiration is parsed per: http://strftime.org/
"""
# If the user is not staff, we need to verify whether or not to make a reminder at all.
- if await without_role_check(ctx, *STAFF_ROLES):
+ if await has_no_roles_check(ctx, *STAFF_ROLES):
# If they don't have permission to set a reminder in this channel
if ctx.channel.id not in WHITELISTED_CHANNELS:
@@ -431,7 +431,7 @@ class Reminders(Cog):
The check passes when the user is an admin, or if they created the reminder.
"""
- if await with_role_check(ctx, Roles.admins):
+ if await has_any_role_check(ctx, Roles.admins):
return True
api_response = await self.bot.api_client.get(f"bot/reminders/{reminder_id}")
diff --git a/bot/cogs/verification.py b/bot/cogs/verification.py
index afbe1d3b8..300c7f315 100644
--- a/bot/cogs/verification.py
+++ b/bot/cogs/verification.py
@@ -7,8 +7,8 @@ from discord.ext.commands import Cog, Context, command
from bot import constants
from bot.bot import Bot
from bot.cogs.moderation import ModLog
-from bot.decorators import in_whitelist, without_role
-from bot.utils.checks import InWhitelistCheckFailure, without_role_check
+from bot.decorators import has_no_roles, in_whitelist
+from bot.utils.checks import InWhitelistCheckFailure, has_no_roles_check
log = logging.getLogger(__name__)
@@ -107,7 +107,7 @@ class Verification(Cog):
await ctx.message.delete()
@command(name='accept', aliases=('verify', 'verified', 'accepted'), hidden=True)
- @without_role(constants.Roles.verified)
+ @has_no_roles(constants.Roles.verified)
@in_whitelist(channels=(constants.Channels.verification,))
async def accept_command(self, ctx: Context, *_) -> None: # We don't actually care about the args
"""Accept our rules and gain access to the rest of the server."""
@@ -181,7 +181,7 @@ class Verification(Cog):
async def bot_check(ctx: Context) -> bool:
"""Block any command within the verification channel that is not !accept."""
is_verification = ctx.channel.id == constants.Channels.verification
- if is_verification and await without_role_check(ctx, *constants.MODERATION_ROLES):
+ if is_verification and await has_no_roles_check(ctx, *constants.MODERATION_ROLES):
return ctx.command.name == "accept"
else:
return True
diff --git a/bot/decorators.py b/bot/decorators.py
index 56028ad8a..2518124da 100644
--- a/bot/decorators.py
+++ b/bot/decorators.py
@@ -44,7 +44,7 @@ def in_whitelist(
return commands.check(predicate)
-def without_role(*roles: Union[str, int]) -> Callable:
+def has_no_roles(*roles: Union[str, int]) -> Callable:
"""
Returns True if the user does not have any of the roles specified.
diff --git a/bot/utils/checks.py b/bot/utils/checks.py
index c2e41efb3..460a937d8 100644
--- a/bot/utils/checks.py
+++ b/bot/utils/checks.py
@@ -91,7 +91,7 @@ def in_whitelist_check(
return False
-async def with_role_check(ctx: Context, *roles: Union[str, int]) -> bool:
+async def has_any_role_check(ctx: Context, *roles: Union[str, int]) -> bool:
"""
Returns True if the context's author has any of the specified roles.
@@ -104,7 +104,7 @@ async def with_role_check(ctx: Context, *roles: Union[str, int]) -> bool:
return False
-async def without_role_check(ctx: Context, *roles: Union[str, int]) -> bool:
+async def has_no_roles_check(ctx: Context, *roles: Union[str, int]) -> bool:
"""
Returns True if the context's author doesn't have any of the specified roles.
diff --git a/tests/bot/utils/test_checks.py b/tests/bot/utils/test_checks.py
index de72e5748..dfee2cf91 100644
--- a/tests/bot/utils/test_checks.py
+++ b/tests/bot/utils/test_checks.py
@@ -12,37 +12,37 @@ class ChecksTests(unittest.TestCase):
def setUp(self):
self.ctx = MockContext()
- def test_with_role_check_without_guild(self):
- """`with_role_check` returns `False` if `Context.guild` is None."""
+ def test_has_any_role_check_without_guild(self):
+ """`has_any_role_check` returns `False` if `Context.guild` is None."""
self.ctx.guild = None
- self.assertFalse(checks.with_role_check(self.ctx))
+ self.assertFalse(checks.has_any_role_check(self.ctx))
- def test_with_role_check_without_required_roles(self):
- """`with_role_check` returns `False` if `Context.author` lacks the required role."""
+ def test_has_any_role_check_without_required_roles(self):
+ """`has_any_role_check` returns `False` if `Context.author` lacks the required role."""
self.ctx.author.roles = []
- self.assertFalse(checks.with_role_check(self.ctx))
+ self.assertFalse(checks.has_any_role_check(self.ctx))
- def test_with_role_check_with_guild_and_required_role(self):
- """`with_role_check` returns `True` if `Context.author` has the required role."""
+ def test_has_any_role_check_with_guild_and_required_role(self):
+ """`has_any_role_check` returns `True` if `Context.author` has the required role."""
self.ctx.author.roles.append(MockRole(id=10))
- self.assertTrue(checks.with_role_check(self.ctx, 10))
+ self.assertTrue(checks.has_any_role_check(self.ctx, 10))
- def test_without_role_check_without_guild(self):
- """`without_role_check` should return `False` when `Context.guild` is None."""
+ def test_has_no_roles_check_without_guild(self):
+ """`has_no_roles_check` should return `False` when `Context.guild` is None."""
self.ctx.guild = None
- self.assertFalse(checks.without_role_check(self.ctx))
+ self.assertFalse(checks.has_no_roles_check(self.ctx))
- def test_without_role_check_returns_false_with_unwanted_role(self):
- """`without_role_check` returns `False` if `Context.author` has unwanted role."""
+ def test_has_no_roles_check_returns_false_with_unwanted_role(self):
+ """`has_no_roles_check` returns `False` if `Context.author` has unwanted role."""
role_id = 42
self.ctx.author.roles.append(MockRole(id=role_id))
- self.assertFalse(checks.without_role_check(self.ctx, role_id))
+ self.assertFalse(checks.has_no_roles_check(self.ctx, role_id))
- def test_without_role_check_returns_true_without_unwanted_role(self):
- """`without_role_check` returns `True` if `Context.author` does not have unwanted role."""
+ def test_has_no_roles_check_returns_true_without_unwanted_role(self):
+ """`has_no_roles_check` returns `True` if `Context.author` does not have unwanted role."""
role_id = 42
self.ctx.author.roles.append(MockRole(id=role_id))
- self.assertTrue(checks.without_role_check(self.ctx, role_id + 10))
+ self.assertTrue(checks.has_no_roles_check(self.ctx, role_id + 10))
def test_in_whitelist_check_correct_channel(self):
"""`in_whitelist_check` returns `True` if `Context.channel.id` is in the channel list."""