diff options
author | Tulio Casagrande <tuliocasagrande@gmail.com> | 2017-01-20 15:32:02 -0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-20 15:32:02 -0200 |
commit | bcdfa584baa617025bf69acafe7e6576a8228912 (patch) | |
tree | cbb45f90617825584d8b71531c5976e28ba5addf /service/test/unit/config/test_sessions.py | |
parent | b47fa1461c3dd919a193337afb035c14695cb900 (diff) | |
parent | c427efc53d2f373e5a149f4d2a4118ab9a85a15b (diff) |
Merge pull request #920 from olabini/initial-errors2
Rebase previous PR on current master - see PR #915 for details
Diffstat (limited to 'service/test/unit/config/test_sessions.py')
-rw-r--r-- | service/test/unit/config/test_sessions.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/service/test/unit/config/test_sessions.py b/service/test/unit/config/test_sessions.py index 91a0ef90..e2254eae 100644 --- a/service/test/unit/config/test_sessions.py +++ b/service/test/unit/config/test_sessions.py @@ -19,10 +19,11 @@ from mock import patch from mock import MagicMock from mockito import when from twisted.internet import defer -from pixelated.config.sessions import LeapSession, SessionCache, LeapSessionFactory +from pixelated.config.sessions import LeapSession, SessionCache, LeapSessionFactory, SoledadWrongPassphraseException from pixelated.bitmask_libraries.keymanager import UploadKeyError from test.unit.bitmask_libraries.test_abstract_leap import AbstractLeapTest from leap.common.events.catalog import KEYMANAGER_FINISHED_KEY_GENERATION +from leap.soledad.common.crypto import WrongMacError, UnknownMacMethodError class SessionTest(AbstractLeapTest): @@ -179,6 +180,18 @@ class SessionTest(AbstractLeapTest): self.assertIs(type(uuid_arg), str, "expected uuid argument to be a string") self.assertIs(type(pass_arg), unicode, "expected passphrase argument to be unicode") + @defer.inlineCallbacks + def test_sessions__setup_soledad__will_raise_wrong_passphrase_exception_on_errors(self): + leap_session_factory = LeapSessionFactory(self.provider) + + with patch('pixelated.config.sessions.Soledad', side_effect=WrongMacError("oh no")): + with self.assertRaises(SoledadWrongPassphraseException): + yield leap_session_factory.setup_soledad('token', u'uuid', 'passphrase', None) + + with patch('pixelated.config.sessions.Soledad', side_effect=UnknownMacMethodError("oh no")): + with self.assertRaises(SoledadWrongPassphraseException): + yield leap_session_factory.setup_soledad('token', u'uuid', 'passphrase', None) + def _create_session(self): return LeapSession(self.provider, self.auth, self.mail_store, self.soledad_session, self.keymanager, self.smtp_mock) |