summaryrefslogtreecommitdiff
path: root/service/test/unit
diff options
context:
space:
mode:
authorDenis Costa <deniscostadsc@gmail.com>2017-04-13 16:43:12 -0300
committerGitHub <noreply@github.com>2017-04-13 16:43:12 -0300
commit1fcb0c8fb399647bf86ef1b7c6771b3a29f67aa9 (patch)
tree57afe993d19006c223c767d37acc4cd4b9426581 /service/test/unit
parent9203d8e62dd5bd3c9456629e9b336a0b89fbd502 (diff)
parentec00906375cd35220ee694264dce9c4ba5cdbcc9 (diff)
Merge pull request #1052 from pixelated/email-recovery-code
[#927] Email recovery code
Diffstat (limited to 'service/test/unit')
-rw-r--r--service/test/unit/resources/test_backup_account_resource.py10
-rw-r--r--service/test/unit/test_account_recovery.py31
2 files changed, 22 insertions, 19 deletions
diff --git a/service/test/unit/resources/test_backup_account_resource.py b/service/test/unit/resources/test_backup_account_resource.py
index e5e2793a..220e3909 100644
--- a/service/test/unit/resources/test_backup_account_resource.py
+++ b/service/test/unit/resources/test_backup_account_resource.py
@@ -14,8 +14,6 @@
# You should have received a copy of the GNU Affero General Public License
# along with Pixelated. If not, see <http://www.gnu.org/licenses/>.
-import os
-
from mock import MagicMock, patch
from twisted.trial import unittest
from twisted.web.test.requesthelper import DummyRequest
@@ -28,7 +26,10 @@ from test.unit.resources import DummySite
class TestBackupAccountResource(unittest.TestCase):
def setUp(self):
self.services_factory = MagicMock()
- self.resource = BackupAccountResource(self.services_factory, MagicMock())
+ self.authenticator = MagicMock()
+ self.leap_provider = MagicMock()
+ self.leap_provider.server_name = 'test.com'
+ self.resource = BackupAccountResource(self.services_factory, self.authenticator, self.leap_provider)
self.web = DummySite(self.resource)
def test_get(self):
@@ -59,7 +60,8 @@ class TestBackupAccountResource(unittest.TestCase):
self.resource._authenticator.bonafide_session,
self.resource.soledad(request),
self.resource._service(request, '_leap_session').smtp_config,
- self.resource._get_backup_email(request))
+ self.resource._get_backup_email(request),
+ self.leap_provider.server_name)
mock_account_recovery.update_recovery_code.assert_called()
d.addCallback(assert_update_recovery_code_called)
diff --git a/service/test/unit/test_account_recovery.py b/service/test/unit/test_account_recovery.py
index f113169a..08298419 100644
--- a/service/test/unit/test_account_recovery.py
+++ b/service/test/unit/test_account_recovery.py
@@ -19,8 +19,8 @@ from twisted.internet import defer
from twisted.trial import unittest
from twisted.mail import smtp
-from mock import patch, Mock, MagicMock
-from mockito import mock, when, any as ANY
+from mock import patch, Mock
+from mockito import when, any as ANY
from pixelated.account_recovery import AccountRecovery
@@ -32,36 +32,37 @@ class AccountRecoveryTest(unittest.TestCase):
self.mock_soledad = Mock()
self.mock_smtp_config = Mock()
self.keymanager = Mock()
- self.mock_smtp_config.remote_smtp_host = 'test.com'
+ self.mock_smtp_config.remote_smtp_host = 'localhost'
self.mock_soledad.create_recovery_code.return_value = self.generated_code
self.backup_email = 'test@test.com'
+ self.domain = 'test.com'
self.account_recovery = AccountRecovery(
self.mock_bonafide_session,
self.mock_soledad,
self.mock_smtp_config,
- self.backup_email)
+ self.backup_email,
+ self.domain)
self.mock_smtp = Mock()
@defer.inlineCallbacks
def test_update_recovery_code(self):
when(self.account_recovery)._send_mail(ANY).thenReturn(defer.succeed(None))
- response = yield self.account_recovery.update_recovery_code()
+ yield self.account_recovery.update_recovery_code()
self.mock_bonafide_session.update_recovery_code.assert_called_once_with(self.generated_code)
@defer.inlineCallbacks
def test_send_recovery_code_by_email(self):
+ sender = 'team@{}'.format(self.domain)
msg = MIMEText('Your code %s' % self.generated_code)
msg['Subject'] = 'Recovery Code'
- msg['From'] = 'team@pixelated-project.org'
+ msg['From'] = sender
msg['To'] = self.backup_email
- result = MagicMock()
- deferred_sendmail = defer.succeed(result)
- with patch.object(smtp, 'sendmail', return_value=deferred_sendmail) as mock_sendmail:
- response = yield self.account_recovery._send_mail(self.generated_code, self.backup_email)
+ with patch.object(smtp, 'sendmail', return_value=defer.succeed(None)) as mock_sendmail:
+ yield self.account_recovery._send_mail(self.generated_code, self.backup_email)
- mock_sendmail.assert_called_with(
- 'test.com',
- 'team@pixelated-project.org',
- [self.backup_email],
- msg.as_string())
+ mock_sendmail.assert_called_with(
+ self.mock_smtp_config.remote_smtp_host,
+ sender,
+ [self.backup_email],
+ msg.as_string())