Fix mailing profile test view.
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -18,6 +18,7 @@
|
|||||||
- Add support for workflow actions.
|
- Add support for workflow actions.
|
||||||
- Add support for rendering workflows.
|
- Add support for rendering workflows.
|
||||||
- Add support for unbinding sub menus.
|
- Add support for unbinding sub menus.
|
||||||
|
- Fix mailing profile test view.
|
||||||
|
|
||||||
2.6.4 (2017-07-26)
|
2.6.4 (2017-07-26)
|
||||||
==================
|
==================
|
||||||
|
|||||||
@@ -2,9 +2,7 @@ from __future__ import unicode_literals
|
|||||||
|
|
||||||
from django.core import mail
|
from django.core import mail
|
||||||
|
|
||||||
from documents.tests.test_views import (
|
from documents.tests.test_views import GenericDocumentViewTestCase
|
||||||
GenericDocumentViewTestCase, GenericViewTestCase
|
|
||||||
)
|
|
||||||
|
|
||||||
from ..models import UserMailer
|
from ..models import UserMailer
|
||||||
from ..permissions import (
|
from ..permissions import (
|
||||||
@@ -91,8 +89,6 @@ class MailerViewsTestCase(MailerTestMixin, GenericDocumentViewTestCase):
|
|||||||
self.assertEqual(len(mail.outbox), 1)
|
self.assertEqual(len(mail.outbox), 1)
|
||||||
self.assertEqual(mail.outbox[0].to, [TEST_EMAIL_ADDRESS])
|
self.assertEqual(mail.outbox[0].to, [TEST_EMAIL_ADDRESS])
|
||||||
|
|
||||||
|
|
||||||
class UserMailerViewTestCase(MailerTestMixin, GenericViewTestCase):
|
|
||||||
def _request_user_mailer_delete(self):
|
def _request_user_mailer_delete(self):
|
||||||
return self.post(
|
return self.post(
|
||||||
'mailer:user_mailer_delete', args=(self.user_mailer.pk,)
|
'mailer:user_mailer_delete', args=(self.user_mailer.pk,)
|
||||||
@@ -144,3 +140,34 @@ class UserMailerViewTestCase(MailerTestMixin, GenericViewTestCase):
|
|||||||
self.assertNotEqual(
|
self.assertNotEqual(
|
||||||
[UserMailer.objects.all()], [self.user_mailer]
|
[UserMailer.objects.all()], [self.user_mailer]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def _request_user_mailer_test(self):
|
||||||
|
return self.post(
|
||||||
|
'mailer:user_mailer_test', args=(self.user_mailer.pk,), data={
|
||||||
|
'email': TEST_EMAIL_ADDRESS
|
||||||
|
}, follow=True
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_user_mailer_test_view_no_permissions(self):
|
||||||
|
self._create_user_mailer()
|
||||||
|
self.login_user()
|
||||||
|
|
||||||
|
response = self._request_user_mailer_test()
|
||||||
|
|
||||||
|
self.assertEqual(response.status_code, 403)
|
||||||
|
|
||||||
|
self.assertEqual(len(mail.outbox), 0)
|
||||||
|
|
||||||
|
def test_user_mailer_test_view_with_access(self):
|
||||||
|
self._create_user_mailer()
|
||||||
|
self.login_user()
|
||||||
|
|
||||||
|
self.grant_access(
|
||||||
|
obj=self.user_mailer, permission=permission_user_mailer_use
|
||||||
|
)
|
||||||
|
|
||||||
|
response = self._request_user_mailer_test()
|
||||||
|
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
self.assertEqual(len(mail.outbox), 1)
|
||||||
|
self.assertEqual(mail.outbox[0].to, [TEST_EMAIL_ADDRESS])
|
||||||
|
|||||||
@@ -231,20 +231,21 @@ class UserMailerListView(SingleObjectListView):
|
|||||||
|
|
||||||
class UserMailerTestView(FormView):
|
class UserMailerTestView(FormView):
|
||||||
form_class = UserMailerTestForm
|
form_class = UserMailerTestForm
|
||||||
|
object_permission = permission_user_mailer_edit
|
||||||
|
|
||||||
def form_valid(self, form):
|
def form_valid(self, form):
|
||||||
self.get_user_mailer().test(to=(form.cleaned_data['email'],))
|
self.get_object().test(to=form.cleaned_data['email'])
|
||||||
return super(UserMailerTestView, self).form_valid(form=form)
|
return super(UserMailerTestView, self).form_valid(form=form)
|
||||||
|
|
||||||
def get_extra_context(self):
|
def get_extra_context(self):
|
||||||
return {
|
return {
|
||||||
'hide_object': True,
|
'hide_object': True,
|
||||||
'object': self.get_user_mailer(),
|
'object': self.get_object(),
|
||||||
'submit_label': _('Test'),
|
'submit_label': _('Test'),
|
||||||
'title': _('Test mailing profile: %s') % self.get_user_mailer(),
|
'title': _('Test mailing profile: %s') % self.get_object(),
|
||||||
}
|
}
|
||||||
|
|
||||||
def get_user_mailer(self):
|
def get_object(self):
|
||||||
user_mailer = get_object_or_404(UserMailer, pk=self.kwargs['pk'])
|
user_mailer = get_object_or_404(UserMailer, pk=self.kwargs['pk'])
|
||||||
AccessControlList.objects.check_access(
|
AccessControlList.objects.check_access(
|
||||||
permissions=permission_user_mailer_use, user=self.request.user,
|
permissions=permission_user_mailer_use, user=self.request.user,
|
||||||
|
|||||||
Reference in New Issue
Block a user