bots: Require bots_details in ExternalBotHandler.

This parameter was defaulting to a dictionary, which is
a classic Python pitfall.
This commit is contained in:
Steve Howell 2017-11-27 12:51:02 -08:00 committed by showell
parent ef30261858
commit 8a15452525
3 changed files with 3 additions and 3 deletions

View file

@ -83,7 +83,7 @@ class StateHandler(object):
return key in self.state_
class ExternalBotHandler(object):
def __init__(self, client, root_dir, bot_details={}):
def __init__(self, client, root_dir, bot_details):
# type: (Client, str, Dict[str, Any]) -> None
# Only expose a subset of our Client's functionality
try:

View file

@ -44,7 +44,7 @@ class BotTestCaseBase(TestCase):
# Mocking ExternalBotHandler
self.patcher = patch('zulip_bots.lib.ExternalBotHandler', autospec=True)
self.MockClass = self.patcher.start()
self.mock_bot_handler = self.MockClass(None, None)
self.mock_bot_handler = self.MockClass(None, None, None)
self.mock_client = MagicMock()
self.mock_client.get_storage.return_value = {'result': 'success', 'state': {}}
self.mock_client.update_storage.return_value = {'result': 'success'}