diff options
Diffstat (limited to '')
| -rw-r--r-- | bot/cogs/snekbox.py | 13 | ||||
| -rw-r--r-- | tests/bot/cogs/test_snekbox.py | 8 | 
2 files changed, 10 insertions, 11 deletions
| diff --git a/bot/cogs/snekbox.py b/bot/cogs/snekbox.py index 52d830fa8..381b309e0 100644 --- a/bot/cogs/snekbox.py +++ b/bot/cogs/snekbox.py @@ -209,12 +209,11 @@ class Snekbox(Cog):              log.info(f"{ctx.author}'s job had a return code of {results['returncode']}")          return response -    async def continue_eval(self, ctx: Context, response: Message) -> Tuple[bool, Optional[str]]: +    async def continue_eval(self, ctx: Context, response: Message) -> Optional[str]:          """          Check if the eval session should continue. -        First item of the returned tuple is if the eval session should continue, -        the second is the new code to evaluate. +        Return the new code to evaluate or None if the eval session should be terminated.          """          _predicate_eval_message_edit = partial(predicate_eval_message_edit, ctx)          _predicate_emoji_reaction = partial(predicate_eval_emoji_reaction, ctx) @@ -239,9 +238,9 @@ class Snekbox(Cog):          except asyncio.TimeoutError:              await ctx.message.clear_reactions() -            return False, None +            return None -        return True, code +        return code      @command(name="eval", aliases=("e",))      @guild_only() @@ -275,8 +274,8 @@ class Snekbox(Cog):              finally:                  del self.jobs[ctx.author.id] -            continue_eval, code = await self.continue_eval(ctx, response) -            if not continue_eval: +            code = await self.continue_eval(ctx, response) +            if not code:                  break              log.info(f"Re-evaluating message {ctx.message.id}") diff --git a/tests/bot/cogs/test_snekbox.py b/tests/bot/cogs/test_snekbox.py index e7a1e3362..985bc66a1 100644 --- a/tests/bot/cogs/test_snekbox.py +++ b/tests/bot/cogs/test_snekbox.py @@ -179,7 +179,7 @@ class SnekboxTests(unittest.TestCase):          response = MockMessage()          self.cog.prepare_input = MagicMock(return_value='MyAwesomeFormattedCode')          self.cog.send_eval = AsyncMock(return_value=response) -        self.cog.continue_eval = AsyncMock(return_value=(False, None)) +        self.cog.continue_eval = AsyncMock(return_value=None)          await self.cog.eval_command.callback(self.cog, ctx=ctx, code='MyAwesomeCode')          self.cog.prepare_input.assert_called_once_with('MyAwesomeCode') @@ -194,7 +194,7 @@ class SnekboxTests(unittest.TestCase):          self.cog.prepare_input = MagicMock(return_value='MyAwesomeFormattedCode')          self.cog.send_eval = AsyncMock(return_value=response)          self.cog.continue_eval = AsyncMock() -        self.cog.continue_eval.side_effect = ((True, 'MyAwesomeCode-2'), (False, None)) +        self.cog.continue_eval.side_effect = ('MyAwesomeCode-2', None)          await self.cog.eval_command.callback(self.cog, ctx=ctx, code='MyAwesomeCode')          self.cog.prepare_input.has_calls(call('MyAwesomeCode'), call('MyAwesomeCode-2')) @@ -298,7 +298,7 @@ class SnekboxTests(unittest.TestCase):          self.bot.wait_for.side_effect = ((None, new_msg), None)          actual = await self.cog.continue_eval(ctx, response) -        self.assertEqual(actual, (True, 'NewCode')) +        self.assertEqual(actual, 'NewCode')          self.bot.wait_for.has_calls(              call('message_edit', partial(snekbox.predicate_eval_message_edit, ctx), timeout=10),              call('reaction_add', partial(snekbox.predicate_eval_emoji_reaction, ctx), timeout=10) @@ -313,7 +313,7 @@ class SnekboxTests(unittest.TestCase):          self.bot.wait_for.side_effect = asyncio.TimeoutError          actual = await self.cog.continue_eval(ctx, MockMessage()) -        self.assertEqual(actual, (False, None)) +        self.assertEqual(actual, None)          ctx.message.clear_reactions.assert_called_once()      def test_predicate_eval_message_edit(self): | 
