def test_has_repo_file_privilege_sad_path(self): Collaborator = self.create_patch('core.db.manager.Collaborator') collab = MagicMock() collab.file_permissions = '' Collaborator.objects.get.return_value = collab User = self.create_patch('core.db.manager.User') user = MagicMock() User.objects.get.return_value = user with self.assertRaises(PermissionDenied): DataHubManager.has_repo_file_privilege( self.username, 'repo_base', 'repo', 'read')
def test_has_repo_file_privilege_happy_path(self): # User returns some a mock User = self.create_patch('core.db.manager.User') user = MagicMock() User.objects.get.return_value = user # Collaborator.objects.filter returns an array of collaborators Collaborator = self.create_patch('core.db.manager.Collaborator') collab = MagicMock() collab.file_permission = 'read, write' collab.user = user collabs = [collab] Collaborator.objects.filter.return_value = collabs # Not raising a PermissionDenied exception when connection returns True # means has_repo_db_privilege is behaving correctly. DataHubManager.has_repo_file_privilege( self.username, 'repo_base', 'repo', 'read')
def test_has_repo_file_privilege_when_username_is_repo_base(self): # Not raising a PermissionDenied exception when connection returns True # means has_repo_db_privilege is behaving correctly. DataHubManager.has_repo_file_privilege( self.username, self.username, 'repo', 'read')