aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/cogs/information.py15
-rw-r--r--tests/bot/cogs/test_information.py5
2 files changed, 9 insertions, 11 deletions
diff --git a/bot/cogs/information.py b/bot/cogs/information.py
index 49beca15b..7921a4932 100644
--- a/bot/cogs/information.py
+++ b/bot/cogs/information.py
@@ -13,6 +13,7 @@ from discord.utils import escape_markdown
from bot import constants
from bot.bot import Bot
from bot.decorators import InChannelCheckFailure, in_channel, with_role
+from bot.pagination import LinePaginator
from bot.utils.checks import cooldown_with_role_bypass, with_role_check
from bot.utils.time import time_since
@@ -32,20 +33,18 @@ class Information(Cog):
# Sort the roles alphabetically and remove the @everyone role
roles = sorted(ctx.guild.roles[1:], key=lambda role: role.name)
- # Build a string
- role_string = ""
+ # Build a list
+ role_list = []
for role in roles:
- role_string += f"`{role.id}` - {role.mention}\n"
+ role_list.append(f"`{role.id}` - {role.mention}")
# Build an embed
embed = Embed(
- title="Role information",
- colour=Colour.blurple(),
- description=role_string
+ title=f"Role information (Total {len(roles)} role{'s' * (len(role_list) > 1)})",
+ colour=Colour.blurple()
)
- embed.set_footer(text=f"Total roles: {len(roles)}")
- await ctx.send(embed=embed)
+ await LinePaginator.paginate(role_list, ctx, embed, empty=False)
@with_role(*constants.MODERATION_ROLES)
@command(name="role")
diff --git a/tests/bot/cogs/test_information.py b/tests/bot/cogs/test_information.py
index 5693d2946..3c26374f5 100644
--- a/tests/bot/cogs/test_information.py
+++ b/tests/bot/cogs/test_information.py
@@ -45,10 +45,9 @@ class InformationCogTests(unittest.TestCase):
_, kwargs = self.ctx.send.call_args
embed = kwargs.pop('embed')
- self.assertEqual(embed.title, "Role information")
+ self.assertEqual(embed.title, "Role information (Total 1 role)")
self.assertEqual(embed.colour, discord.Colour.blurple())
- self.assertEqual(embed.description, f"`{self.moderator_role.id}` - {self.moderator_role.mention}\n")
- self.assertEqual(embed.footer.text, "Total roles: 1")
+ self.assertEqual(embed.description, f"\n`{self.moderator_role.id}` - {self.moderator_role.mention}\n")
def test_role_info_command(self):
"""Tests the `role info` command."""