summaryrefslogtreecommitdiff
path: root/service/test
diff options
context:
space:
mode:
Diffstat (limited to 'service/test')
-rw-r--r--service/test/adapter/mail_service_test.py19
-rw-r--r--service/test/adapter/pixelated_mail_test.py7
-rw-r--r--service/test/user_agent_test.py34
3 files changed, 60 insertions, 0 deletions
diff --git a/service/test/adapter/mail_service_test.py b/service/test/adapter/mail_service_test.py
index d736e0d0..225c08f8 100644
--- a/service/test/adapter/mail_service_test.py
+++ b/service/test/adapter/mail_service_test.py
@@ -77,3 +77,22 @@ class TestMailService(unittest.TestCase):
# then
self.assertEqual(1, len(mails))
self.assertEqual(set([Tag('custom_tag')]), mails[0].tags)
+
+
+ def test_send_mail(self):
+ leap_session = Mock(account_email=lambda: "username@leap_server")
+ mail_service = MailService(leap_session)
+ mail_service._create_smtp_server = lambda: None
+ mail_service._create_smtp_server = lambda: None
+
+ mail_service.smtp_client = Mock()
+ mail = Mock(
+ to_smtp_format=lambda _from=None: "mail as string",
+ get_to=lambda: 'to@pixelated.org'
+ )
+
+ mail_service.send(mail)
+
+ mail_service.smtp_client.sendmail.assert_called_with('username@leap_server', 'to@pixelated.org', "mail as string")
+
+
diff --git a/service/test/adapter/pixelated_mail_test.py b/service/test/adapter/pixelated_mail_test.py
index b6bf623f..7dfdc6d9 100644
--- a/service/test/adapter/pixelated_mail_test.py
+++ b/service/test/adapter/pixelated_mail_test.py
@@ -85,3 +85,10 @@ class TestPixelatedMail(unittest.TestCase):
self.assertRegexpMatches(mime_multipart.as_string(), "\nSubject: Oi\n")
self.assertRegexpMatches(mime_multipart.as_string(), "\nEste \xe9 o corpo")
+ def test_smtp_format(self):
+ mail = PixelatedMail.from_dict(self.mail_dict)
+
+ smtp_format = mail.to_smtp_format(_from='pixelated@org')
+
+ self.assertRegexpMatches(smtp_format, "\nFrom: pixelated@org")
+
diff --git a/service/test/user_agent_test.py b/service/test/user_agent_test.py
new file mode 100644
index 00000000..7c701a54
--- /dev/null
+++ b/service/test/user_agent_test.py
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2014 ThoughtWorks, Inc.
+#
+# Pixelated is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Pixelated is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# 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 unittest
+import pixelated.user_agent
+from mock import Mock
+import pixelated.adapter.pixelated_mail
+
+
+class UserAgentTest(unittest.TestCase):
+
+ def setUp(self):
+ self.app = pixelated.user_agent.app.test_client()
+
+ def test_send_mail_should_add_user_account(self):
+ pixelated.user_agent.mail_service = Mock()
+ pixelated.adapter.pixelated_mail.from_dict = lambda self: 'mail'
+
+ self.app.post('/mails', data='{}', content_type="application/json")
+
+ pixelated.user_agent.mail_service.send.assert_called_with('mail')