Skip to content

Commit

Permalink
Add test on extra metadta (#9859) (#9860)
Browse files Browse the repository at this point in the history
[Fixes #9842] Extra metadata endpoint return 403 even if the user has view perms, add new test

Co-authored-by: mattiagiupponi <51856725+mattiagiupponi@users.noreply.github.com>
  • Loading branch information
github-actions[bot] and mattiagiupponi committed Aug 17, 2022
1 parent d118168 commit db972f1
Showing 1 changed file with 15 additions and 0 deletions.
15 changes: 15 additions & 0 deletions geonode/base/api/tests.py
Expand Up @@ -2471,3 +2471,18 @@ def test_delete_will_delete_single_metadata(self):
response = self.client.delete(url, data=[self.mdata.id], content_type='application/json')
self.assertTrue(200, response.status_code)
self.assertEqual([], response.json())

def test_user_without_view_perms_cannot_see_the_endpoint(self):
from geonode.resource.manager import resource_manager

self.client.login(username='bobby', password='bob')
resource_manager.remove_permissions(self.layer.uuid, instance=self.layer.get_self_resource())
url = reverse('base-resources-extra-metadata', args=[self.layer.id])
response = self.client.get(url, content_type='application/json')
self.assertTrue(403, response.status_code)

perm_spec = {"users": {"bobby": ['view_resourcebase']}, "groups": {}}
self.layer.set_permissions(perm_spec)
url = reverse('base-resources-extra-metadata', args=[self.layer.id])
response = self.client.get(url, content_type='application/json')
self.assertTrue(200, response.status_code)

0 comments on commit db972f1

Please sign in to comment.