aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorGravatar MarkKoz <[email protected]>2020-01-15 10:53:38 -0800
committerGravatar MarkKoz <[email protected]>2020-02-12 10:07:53 -0800
commit555d1f47d75afbaaae2758fac8460d8d6af65d61 (patch)
tree3fa65678abcd56100201d6062fd93274a5521161 /tests
parentSync 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.py26
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)