예제 #1
0
    def test_get_resource_permission(self, mock_f, mock_resp):
        """
        Test specific resource permissions retrieval.
        """
        perm = {
            'resource': '/v2/some/',
            'id': '1234',
            'users': [{
                'username': '******',
                'permissions': [0]
            }]
        }

        mock_f.permission_query_manager.return_value.find_by_resource.return_value = perm
        mock_f.permission_manager.return_value.operation_value_to_name.return_value = 'READ'

        request = mock.MagicMock()
        request.body = json.dumps({'resource': '/v2/some/'})

        permission = PermissionView()
        response = permission.get(request)
        expected_cont = [{
            'id': '1234',
            'resource': '/v2/some/',
            'users': {
                'test-user': ['READ']
            }
        }]

        mock_resp.assert_called_once_with(expected_cont)
        self.assertTrue(response is mock_resp.return_value)
예제 #2
0
    def test_get_resource_permission(self, mock_f, mock_resp):
        """
        Test specific resource permissions retrieval.
        """
        perm = {'resource': '/v2/some/', 'id': '1234',
                'users': [{'username': '******', 'permissions': [0]}]}

        mock_f.permission_query_manager.return_value.find_by_resource.return_value = perm
        mock_f.permission_manager.return_value.operation_value_to_name.return_value = 'READ'

        request = mock.MagicMock()
        request.body = json.dumps({'resource': '/v2/some/'})

        permission = PermissionView()
        response = permission.get(request)
        expected_cont = [{'id': '1234', 'resource': '/v2/some/', 'users': {'test-user': ['READ']}}]

        mock_resp.assert_called_once_with(expected_cont)
        self.assertTrue(response is mock_resp.return_value)
예제 #3
0
파일: urls.py 프로젝트: hgschmie/pulp
 url(r'^v2/content/types/(?P<type_id>[^/]+)/$', ContentTypeResourceView.as_view(),
     name='content_type_resource'),
 url(r'^v2/content/units/(?P<type_id>[^/]+)/$', ContentUnitsCollectionView.as_view(),
     name='content_units_collection'),
 url(r'^v2/content/units/(?P<type_id>[^/]+)/(?P<unit_id>[^/]+)/$',
     ContentUnitResourceView.as_view(), name='content_unit_resource'),
 url(r'^v2/content/units/(?P<type_id>[^/]+)/(?P<unit_id>[^/]+)/pulp_user_metadata/$',
     ContentUnitUserMetadataResourceView.as_view(), name='content_unit_user_metadata_resource'),
 url(r'^v2/content/uploads/$', UploadsCollectionView.as_view(), name='content_uploads'),
 url(r'^v2/content/uploads/(?P<upload_id>[^/]+)/$', UploadResourceView.as_view(),
     name='content_upload_resource'),
 url(r'^v2/content/uploads/(?P<upload_id>[^/]+)/(?P<offset>[^/]+)/$',
     UploadSegmentResourceView.as_view(), name='content_upload_segment_resource'),
 url(r'^v2/events/$', EventView.as_view(), name='events'),
 url(r'^v2/events/(?P<event_listener_id>[^/]+)/$', EventResourceView.as_view(), name='event_resource'),
 url(r'^v2/permissions/$', PermissionView.as_view(), name='permissions'),
 url(r'^v2/permissions/actions/grant_to_role/$', GrantToRoleView.as_view(), name='grant_to_role'),
 url(r'^v2/permissions/actions/grant_to_user/$', GrantToUserView.as_view(), name='grant_to_user'),
 url(r'^v2/permissions/actions/revoke_from_role/$', RevokeFromRoleView.as_view(), name='revoke_from_role'),
 url(r'^v2/permissions/actions/revoke_from_user/$', RevokeFromUserView.as_view(), name='revoke_from_user'),
 url(r'^v2/plugins/distributors/$', DistributorsView.as_view(), name='plugin_distributors'),
 url(r'^v2/plugins/distributors/(?P<distributor_id>[^/]+)/$', DistributorResourceView.as_view(),
     name='plugin_distributor_resource'),
 url(r'^v2/plugins/importers/$', ImportersView.as_view(), name='plugin_importers'),
 url(r'^v2/plugins/importers/(?P<importer_id>[^/]+)/$', ImporterResourceView.as_view(),
     name='plugin_importer_resource'),
 url(r'^v2/plugins/types/$', TypesView.as_view(), name='plugin_types'),
 url(r'^v2/plugins/types/(?P<type_id>[^/]+)/$', TypeResourceView.as_view(),
     name='plugin_type_resource'),
 url(r'^v2/repo_groups/$', RepoGroupsView.as_view(), name='repo_groups'),
 url(r'^v2/repo_groups/(?P<repo_group_id>[^/]+)/$', RepoGroupResourceView.as_view(),
예제 #4
0
파일: urls.py 프로젝트: credativ/pulp
     UploadsCollectionView.as_view(),
     name='content_uploads'),
 url(r'^v2/content/uploads/(?P<upload_id>[^/]+)/$',
     UploadResourceView.as_view(),
     name='content_upload_resource'),
 url(r'^v2/content/uploads/(?P<upload_id>[^/]+)/(?P<offset>[^/]+)/$',
     UploadSegmentResourceView.as_view(),
     name='content_upload_segment_resource'),
 url(r'^v2/distributors/search/$',
     RepoDistributorsSearchView.as_view(),
     name='distributor_search'),
 url(r'^v2/events/$', EventView.as_view(), name='events'),
 url(r'^v2/events/(?P<event_listener_id>[^/]+)/$',
     EventResourceView.as_view(),
     name='event_resource'),
 url(r'^v2/permissions/$', PermissionView.as_view(), name='permissions'),
 url(r'^v2/permissions/actions/grant_to_role/$',
     GrantToRoleView.as_view(),
     name='grant_to_role'),
 url(r'^v2/permissions/actions/grant_to_user/$',
     GrantToUserView.as_view(),
     name='grant_to_user'),
 url(r'^v2/permissions/actions/revoke_from_role/$',
     RevokeFromRoleView.as_view(),
     name='revoke_from_role'),
 url(r'^v2/permissions/actions/revoke_from_user/$',
     RevokeFromUserView.as_view(),
     name='revoke_from_user'),
 url(r'^v2/plugins/distributors/$',
     DistributorsView.as_view(),
     name='plugin_distributors'),