summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Shyba <victor.shyba@gmail.com>2015-06-09 16:05:45 -0300
committerVictor Shyba <victor.shyba@gmail.com>2015-06-09 16:05:45 -0300
commit7aafd4eb3d18f23beed012f1f2e6865a2da58b43 (patch)
tree4f3e68b94f70a9dc6a428781aa41641f301280ec
parent3ed44327d7d658a58989e2ed5fb053465faffb26 (diff)
Removed triplicated code to concatenate user mail
-rw-r--r--service/pixelated/bitmask_libraries/nicknym.py6
-rw-r--r--service/pixelated/bitmask_libraries/provider.py3
-rw-r--r--service/pixelated/bitmask_libraries/session.py20
-rw-r--r--service/test/unit/bitmask_libraries/test_nicknym.py4
-rw-r--r--service/test/unit/bitmask_libraries/test_session.py4
5 files changed, 16 insertions, 21 deletions
diff --git a/service/pixelated/bitmask_libraries/nicknym.py b/service/pixelated/bitmask_libraries/nicknym.py
index 8220d006..bb278cdc 100644
--- a/service/pixelated/bitmask_libraries/nicknym.py
+++ b/service/pixelated/bitmask_libraries/nicknym.py
@@ -18,10 +18,10 @@ from .certs import LeapCertificate
class NickNym(object):
- def __init__(self, provider, config, soledad_session, username, token, uuid):
+ def __init__(self, provider, config, soledad_session, email_address, token, uuid):
nicknym_url = _discover_nicknym_server(provider)
- self._email = '%s@%s' % (username, provider.domain)
- self.keymanager = KeyManager('%s@%s' % (username, provider.domain), nicknym_url,
+ self._email = email_address
+ self.keymanager = KeyManager(self._email, nicknym_url,
soledad_session.soledad,
token, LeapCertificate(provider).api_ca_bundle, provider.api_uri,
provider.api_version,
diff --git a/service/pixelated/bitmask_libraries/provider.py b/service/pixelated/bitmask_libraries/provider.py
index 0129480c..0a22cf4d 100644
--- a/service/pixelated/bitmask_libraries/provider.py
+++ b/service/pixelated/bitmask_libraries/provider.py
@@ -128,3 +128,6 @@ class LeapProvider(object):
def _provider_base_url(self):
return 'https://%s' % self.server_name
+
+ def address_for(self, username):
+ return '%s@%s' % (username, self.domain)
diff --git a/service/pixelated/bitmask_libraries/session.py b/service/pixelated/bitmask_libraries/session.py
index ad01d495..2b60662e 100644
--- a/service/pixelated/bitmask_libraries/session.py
+++ b/service/pixelated/bitmask_libraries/session.py
@@ -73,9 +73,8 @@ class LeapSession(object):
self.start_background_jobs()
def account_email(self):
- domain = self.provider.domain
name = self.user_auth.username
- return '%s@%s' % (name, domain)
+ return self.provider.address_for(name)
def close(self):
self.stop_background_jobs()
@@ -114,12 +113,13 @@ class LeapSessionFactory(object):
srp_auth = SRPAuth(self._provider.api_uri, self._provider.local_ca_crt)
auth = srp_auth.authenticate(username, password)
+ account_email = self._provider.address_for(username)
soledad = SoledadSessionFactory.create(self._provider, auth.token, auth.uuid, password)
- nicknym = self._create_nicknym(auth.username, auth.token, auth.uuid, soledad)
+ nicknym = self._create_nicknym(account_email, auth.token, auth.uuid, soledad)
account = self._create_account(auth.uuid, soledad)
- incoming_mail_fetcher = self._create_incoming_mail_fetcher(nicknym, soledad, account, auth.username)
+ incoming_mail_fetcher = self._create_incoming_mail_fetcher(nicknym, soledad, account, account_email)
smtp = LeapSmtp(self._provider, auth.username, auth.session_id, nicknym.keymanager)
@@ -150,17 +150,13 @@ class LeapSessionFactory(object):
else:
raise
- def _create_nicknym(self, username, token, uuid, soledad_session):
- return NickNym(self._provider, self._config, soledad_session, username, token, uuid)
+ def _create_nicknym(self, email_address, token, uuid, soledad_session):
+ return NickNym(self._provider, self._config, soledad_session, email_address, token, uuid)
def _create_account(self, uuid, soledad_session):
memstore = MemoryStore(permanent_store=SoledadStore(soledad_session.soledad))
return SoledadBackedAccount(uuid, soledad_session.soledad, memstore)
- def _create_incoming_mail_fetcher(self, nicknym, soledad_session, account, username):
+ def _create_incoming_mail_fetcher(self, nicknym, soledad_session, account, email_address):
return LeapIncomingMail(nicknym.keymanager, soledad_session.soledad, account,
- self._config.fetch_interval_in_s, self._account_email(username))
-
- def _account_email(self, username):
- domain = self._provider.domain
- return '%s@%s' % (username, domain)
+ self._config.fetch_interval_in_s, email_address)
diff --git a/service/test/unit/bitmask_libraries/test_nicknym.py b/service/test/unit/bitmask_libraries/test_nicknym.py
index 4e683494..7e6518b9 100644
--- a/service/test/unit/bitmask_libraries/test_nicknym.py
+++ b/service/test/unit/bitmask_libraries/test_nicknym.py
@@ -30,7 +30,7 @@ class NickNymTest(AbstractLeapTest):
NickNym(self.provider,
self.config,
self.soledad_session,
- self.auth.username,
+ 'test_user@some-server.test',
self.auth.token,
self.auth.uuid)
@@ -54,7 +54,7 @@ class NickNymTest(AbstractLeapTest):
nicknym = NickNym(self.provider,
self.config,
self.soledad_session,
- self.auth.username,
+ 'test_user@some-server.test',
self.auth.token,
self.auth.uuid)
diff --git a/service/test/unit/bitmask_libraries/test_session.py b/service/test/unit/bitmask_libraries/test_session.py
index 62330481..0c662ecb 100644
--- a/service/test/unit/bitmask_libraries/test_session.py
+++ b/service/test/unit/bitmask_libraries/test_session.py
@@ -60,10 +60,6 @@ class SessionTest(AbstractLeapTest):
self.soledad_session.sync.assert_called_once_with()
- def test_account_email(self):
- session = self._create_session()
- self.assertEqual('test_user@some-server.test', session.account_email())
-
def _create_session(self):
return LeapSession(self.provider, self.auth, self.soledad_session, self.nicknym, self.soledad_account,
self.mail_fetcher_mock, self.smtp_mock)