diff options
| author | 2020-01-15 10:53:38 -0800 | |
|---|---|---|
| committer | 2020-02-12 10:07:53 -0800 | |
| commit | 555d1f47d75afbaaae2758fac8460d8d6af65d61 (patch) | |
| tree | 3fa65678abcd56100201d6062fd93274a5521161 /tests | |
| parent | Sync tests: test _wait_for_confirmation (diff) | |
Sync tests: test sync with an empty diff
A confirmation prompt should not be sent if the diff is too small.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/bot/cogs/sync/test_base.py | 26 | 
1 files changed, 25 insertions, 1 deletions
diff --git a/tests/bot/cogs/sync/test_base.py b/tests/bot/cogs/sync/test_base.py index d9f9c6d98..642be75eb 100644 --- a/tests/bot/cogs/sync/test_base.py +++ b/tests/bot/cogs/sync/test_base.py @@ -5,7 +5,7 @@ from unittest import mock  import discord  from bot import constants -from bot.cogs.sync.syncers import Syncer +from bot.cogs.sync.syncers import Syncer, _Diff  from tests import helpers @@ -243,3 +243,27 @@ class SyncerConfirmationTests(unittest.TestCase):                          self.assertNotIn(self.syncer._CORE_DEV_MENTION, kwargs["content"])                      self.assertIs(actual_return, ret_val) + + +class SyncerSyncTests(unittest.TestCase): +    """Tests for main function orchestrating the sync.""" + +    def setUp(self): +        self.bot = helpers.MockBot() +        self.syncer = TestSyncer(self.bot) + +    def test_sync_with_empty_diff(self): +        """A confirmation prompt should not be sent if the diff is too small.""" +        guild = helpers.MockGuild() +        diff = _Diff(set(), set(), set()) + +        self.syncer._send_prompt = helpers.AsyncMock() +        self.syncer._wait_for_confirmation = helpers.AsyncMock() +        self.syncer._get_diff.return_value = diff + +        asyncio.run(self.syncer.sync(guild)) + +        self.syncer._get_diff.assert_called_once_with(guild) +        self.syncer._send_prompt.assert_not_called() +        self.syncer._wait_for_confirmation.assert_not_called() +        self.syncer._sync.assert_called_once_with(diff)  |