Fix ACL create view HTML response type. GitLab issue #335. Thanks to @DocCyblade for the report.

This commit is contained in:
Roberto Rosario
2016-11-08 13:51:39 -04:00
parent 6b9b280d71
commit 048960ae52
4 changed files with 39 additions and 6 deletions

View File

@@ -5,6 +5,7 @@
- Backport zoom transformation performance improvement (GitLab #334).
- Backport trash can navigation link resolution fix (GitLab #331).
- Improve documentation regarding the use of GPG version 1 (GitLab #333).
- Fix ACL create view HTML response type. (GitLab #335).
2.1.4 (2016-10-28)
==================

View File

@@ -21,6 +21,7 @@ Other changes
- Backport zoom performance improvement (GitLab #334).
- Backport trash can navigation link resolution fix (GitLab #331).
- Improve documentation regarding the use of GPG version 1 (GitLab #333).
- Fix ACL create view HTML response type. (GitLab #335).
Removals
--------
@@ -79,5 +80,7 @@ Bugs fixed or issues closed
* `GitLab issue #331 <https://gitlab.com/mayan-edms/mayan-edms/issues/331>`_ Trash List View: Items actions should be limited
* `GitLab issue #333 <https://gitlab.com/mayan-edms/mayan-edms/issues/333>`_ "Unable to run gpg - it may not be available."
* `GitLab issue #334 <https://gitlab.com/mayan-edms/mayan-edms/issues/334>`_ Perfomance improvment: prevent unnecessary image.resize in TransformationZoom
* `GitLab issue #335 <https://gitlab.com/mayan-edms/mayan-edms/issues/335>`_ Wrong HTML Content-Type in ACL->NEW
.. _PyPI: https://pypi.python.org/pypi/mayan-edms/

View File

@@ -26,7 +26,7 @@ class AccessControlListViewTestCase(GenericDocumentViewTestCase):
def test_acl_create_view_no_permission(self):
self.login(username=TEST_USER_USERNAME, password=TEST_USER_PASSWORD)
response = self.post(
response = self.get(
viewname='acls:acl_create', kwargs=self.view_arguments, data={
'role': self.role.pk
}
@@ -42,6 +42,35 @@ class AccessControlListViewTestCase(GenericDocumentViewTestCase):
permission_acl_edit.stored_permission
)
response = self.get(
viewname='acls:acl_create', kwargs=self.view_arguments, data={
'role': self.role.pk
}, follow=True
)
self.assertContains(
response, text=self.document.label, status_code=200
)
def test_acl_create_view_post_no_permission(self):
self.login(username=TEST_USER_USERNAME, password=TEST_USER_PASSWORD)
response = self.post(
viewname='acls:acl_create', kwargs=self.view_arguments, data={
'role': self.role.pk
}
)
self.assertEquals(response.status_code, 403)
self.assertEqual(AccessControlList.objects.count(), 0)
def test_acl_create_view_with_post_permission(self):
self.login(username=TEST_USER_USERNAME, password=TEST_USER_PASSWORD)
self.role.permissions.add(
permission_acl_edit.stored_permission
)
response = self.post(
viewname='acls:acl_create', kwargs=self.view_arguments, data={
'role': self.role.pk

View File

@@ -29,16 +29,16 @@ class ACLCreateView(SingleObjectCreateView):
model = AccessControlList
def dispatch(self, request, *args, **kwargs):
self.content_type = get_object_or_404(
self.object_content_type = get_object_or_404(
ContentType, app_label=self.kwargs['app_label'],
model=self.kwargs['model']
)
try:
self.content_object = self.content_type.get_object_for_this_type(
self.content_object = self.object_content_type.get_object_for_this_type(
pk=self.kwargs['object_id']
)
except self.content_type.model_class().DoesNotExist:
except self.object_content_type.model_class().DoesNotExist:
raise Http404
try:
@@ -60,7 +60,7 @@ class ACLCreateView(SingleObjectCreateView):
def form_valid(self, form):
try:
acl = AccessControlList.objects.get(
content_type=self.content_type,
content_type=self.object_content_type,
object_id=self.content_object.pk,
role=form.cleaned_data['role']
)
@@ -130,7 +130,7 @@ class ACLListView(SingleObjectListView):
self.content_object = self.object_content_type.get_object_for_this_type(
pk=self.kwargs['object_id']
)
except self.content_type.model_class().DoesNotExist:
except self.object_content_type.model_class().DoesNotExist:
raise Http404
try: