diff options
| author | 2021-07-09 03:32:51 +0300 | |
|---|---|---|
| committer | 2021-07-09 03:32:51 +0300 | |
| commit | 5bbd29c8957c320ef94beacd191239032eb959ec (patch) | |
| tree | 93243b0ecaa8750a5cfd19580b70b361c93ff424 /tests | |
| parent | Prevents Blocking In Ping Command (diff) | |
Properly Handle Fuzzy Matching Help
Fixes a bug where calling help with an invalid command would crash out
during fuzzy matching.
Signed-off-by: Hassan Abouelela <[email protected]>
Diffstat (limited to '')
| -rw-r--r-- | tests/bot/exts/info/test_help.py | 23 | 
1 files changed, 23 insertions, 0 deletions
| diff --git a/tests/bot/exts/info/test_help.py b/tests/bot/exts/info/test_help.py new file mode 100644 index 000000000..604c69671 --- /dev/null +++ b/tests/bot/exts/info/test_help.py @@ -0,0 +1,23 @@ +import unittest + +import rapidfuzz + +from bot.exts.info import help +from tests.helpers import MockBot, MockContext, autospec + + +class HelpCogTests(unittest.IsolatedAsyncioTestCase): +    def setUp(self) -> None: +        """Attach an instance of the cog to the class for tests.""" +        self.bot = MockBot() +        self.cog = help.Help(self.bot) +        self.ctx = MockContext(bot=self.bot) +        self.bot.help_command.context = self.ctx + +    @autospec(help.CustomHelpCommand, "get_all_help_choices", return_value={"help"}, pass_mocks=False) +    async def test_help_fuzzy_matching(self): +        """Test fuzzy matching of commands when called from help.""" +        result = await self.bot.help_command.command_not_found("holp") + +        match = {"help": rapidfuzz.fuzz.ratio("help", "holp")} +        self.assertEqual(match, result.possible_matches) | 
