aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorGravatar ks129 <[email protected]>2020-10-11 14:00:09 +0300
committerGravatar ks129 <[email protected]>2020-10-11 14:00:09 +0300
commit8faa82f7d7de795b4a8e2fc7a6dc919994258d6c (patch)
tree30796914a567ba195ef1c2d9fb9f2af4d282bfef /tests
parentCreate test for voice unban (diff)
Create test for case when trying to voice ban user who haven't passed gate
Diffstat (limited to 'tests')
-rw-r--r--tests/bot/exts/moderation/infraction/test_infractions.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/bot/exts/moderation/infraction/test_infractions.py b/tests/bot/exts/moderation/infraction/test_infractions.py
index 02062932e..b2b617e51 100644
--- a/tests/bot/exts/moderation/infraction/test_infractions.py
+++ b/tests/bot/exts/moderation/infraction/test_infractions.py
@@ -60,8 +60,8 @@ class VoiceBanTests(unittest.IsolatedAsyncioTestCase):
def setUp(self):
self.bot = MockBot()
- self.mod = MockMember()
- self.user = MockMember()
+ self.mod = MockMember(top_role=10)
+ self.user = MockMember(top_role=1)
self.ctx = MockContext(bot=self.bot, author=self.mod)
self.cog = Infractions(self.bot)
@@ -82,3 +82,12 @@ class VoiceBanTests(unittest.IsolatedAsyncioTestCase):
self.cog.pardon_infraction = AsyncMock()
self.assertIsNone(await self.cog.unvoiceban(self.cog, self.ctx, self.user))
self.cog.pardon_infraction.assert_awaited_once_with(self.ctx, "voice_ban", self.user)
+
+ @patch("bot.exts.moderation.infraction.infractions.constants.Roles.voice_verified", new=123456)
+ @patch("bot.exts.moderation.infraction.infractions._utils.get_active_infraction")
+ async def test_voice_ban_not_having_voice_verified_role(self, get_active_infraction_mock):
+ """Should send message and not apply infraction when user don't have voice verified role."""
+ self.user.roles = [MockRole(id=987)]
+ self.assertIsNone(await self.cog.apply_voice_ban(self.ctx, self.user, "foobar"))
+ self.ctx.send.assert_awaited_once()
+ get_active_infraction_mock.assert_not_awaited()