def test_send_immediately_success(self, get_current_request): get_current_request.return_value = self.request add_users() self.request.context = Mailing.by_name('welcome_email') result = self.view.send_immediately_success(self.APPSTRUCT) self.assertIsInstance(result, HTTPFound) self.assertEqual(result.location, '/mailing/4/edit/') self.assertEqual( self.request.session.pop_flash(), [u'Mailing "welcome_email" sent to 1 recipients.'], ) mailer = get_mailer(self.request) self.assertEqual(len(mailer.outbox), 1) self.assertEqual(mailer.outbox[0].recipients, [ '*****@*****.**', ]) self.assertEqual(mailer.outbox[0].subject, u'Über Welcome!') self.assertIn( u'Hello Öne Bar', mailer.outbox[0].html, ) self.assertIn(u'Welcome to this über amazing BIMT app!', mailer.outbox[0].html) self.assertIn('Best wishes,', mailer.outbox[0].html) self.assertIn('BIMT Team', mailer.outbox[0].html)
def test_set_value_for_send_immediately_button(self): add_groups() add_users() add_demo_mailing() self.request.context = Mailing.by_name('welcome_email') schema = colander.Schema() form = deform.Form(schema, buttons=['foo', 'bar', 'send_immediately']) self.view.before(form) self.assertEqual(form.buttons[0].value, 'foo') self.assertEqual(form.buttons[1].value, 'bar') self.assertEqual( form.buttons[2].value, 'Immediately send mailing "welcome_email" to all 1 recipients ' 'without date constraints?')
def test_appstruct_full_context(self): self.request.context = Mailing.by_name('welcome_email') self.assertEqual( self.view.appstruct(), { 'name': 'welcome_email', 'groups': [ '4', ], 'exclude_groups': [ '1', ], 'trigger': MailingTriggers.after_created.name, 'days': 1, 'subject': u'Über Welcome!', 'body': u'Welcome to this über amazing BIMT app!', })
def test_test_success(self): add_users() self.request.user = User.by_email('*****@*****.**') self.request.context = Mailing.by_name('welcome_email') result = self.view.test_success(self.APPSTRUCT) self.assertIsInstance(result, HTTPFound) self.assertEqual(result.location, '/mailing/4/edit/') self.assertEqual( self.request.session.pop_flash(), [u'Mailing "welcome_email" sent to "*****@*****.**".'], ) mailer = get_mailer(self.request) self.assertEqual(len(mailer.outbox), 1) self.assertEqual(mailer.outbox[0].subject, u'[Mailing Test] Über Welcome!') self.assertIn('This mailing would be sent to:', mailer.outbox[0].html) self.assertIn('*****@*****.**', mailer.outbox[0].html)