summaryrefslogtreecommitdiff
path: root/service
diff options
context:
space:
mode:
authorOla Bini <ola@olabini.se>2017-01-20 17:25:54 -0200
committerTulio Casagrande <tuliocasagrande@gmail.com>2017-01-21 12:08:49 -0200
commiteab5d66e82aad5dc54f64e769fd460d4adbeaedf (patch)
treec603bac1c1fc64889807a482635c6541c24a71b8 /service
parentbcdfa584baa617025bf69acafe7e6576a8228912 (diff)
Make registering of events for fresh accounts a bit more robust by replacing the old events if they were not cleaned up after previous errors
Diffstat (limited to 'service')
-rw-r--r--service/pixelated/config/sessions.py2
-rw-r--r--service/test/unit/config/test_sessions.py9
2 files changed, 5 insertions, 6 deletions
diff --git a/service/pixelated/config/sessions.py b/service/pixelated/config/sessions.py
index 2bad3e32..b4d69d29 100644
--- a/service/pixelated/config/sessions.py
+++ b/service/pixelated/config/sessions.py
@@ -154,7 +154,7 @@ class LeapSession(object):
self.account = None
self._has_been_initially_synced = False
self._is_closed = False
- register(events.KEYMANAGER_FINISHED_KEY_GENERATION, self._set_fresh_account, uid=self.account_email())
+ register(events.KEYMANAGER_FINISHED_KEY_GENERATION, self._set_fresh_account, uid=self.account_email(), replace=True)
@defer.inlineCallbacks
def first_required_sync(self):
diff --git a/service/test/unit/config/test_sessions.py b/service/test/unit/config/test_sessions.py
index e2254eae..06bffc97 100644
--- a/service/test/unit/config/test_sessions.py
+++ b/service/test/unit/config/test_sessions.py
@@ -74,13 +74,12 @@ class SessionTest(AbstractLeapTest):
yield session.sync()
self.soledad_session.sync.assert_called_once()
- def test_session_registers_to_generated_keys(self):
+ @patch('pixelated.config.sessions.register')
+ def test_session_registers_to_generated_keys(self, register_mock):
email = 'someone@somedomain.tld'
self.provider.address_for.return_value = email
- with patch('pixelated.config.sessions.register') as register_mock:
- session = self._create_session()
-
- register_mock.assert_called_once_with(KEYMANAGER_FINISHED_KEY_GENERATION, session._set_fresh_account, uid=email)
+ session = self._create_session()
+ register_mock.assert_called_once_with(KEYMANAGER_FINISHED_KEY_GENERATION, session._set_fresh_account, uid=email, replace=True)
@patch('pixelated.config.sessions.register')
def test_close_unregisters_from_generate_keys_events(self, _):