예제 #1
0
    def test_remove_default_detail_xslt(self):
        # Arrange
        user = create_mock_user("1")
        RequestMock.do_request_patch(
            views.TemplateXslRenderingAddDetailXslt.as_view(),
            user,
            param={
                "pk": str(self.fixture.template_xsl_rendering_2.id),
                "xslt_id": str(self.fixture.xsl_transformation_1.id),
            },
        )

        # Act
        response = RequestMock.do_request_patch(
            views.TemplateXslRenderingRemoveDetailXslt.as_view(),
            user,
            param={
                "pk": str(self.fixture.template_xsl_rendering_2.id),
                "xslt_id": str(self.fixture.xsl_transformation_3.id),
            },
        )

        # Assert

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(
            response.data["default_detail_xslt"],
            str(self.fixture.xsl_transformation_1.id),
        )
        self.assertNotIn(
            str(self.fixture.xsl_transformation_3.id), response.data["list_detail_xslt"]
        )
        self.assertNotEqual(response.data["list_detail_xslt"], [])
예제 #2
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            oai_provider_views.SetDetail.as_view(),
            None,
            param={"set_id": self.fake_id})

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #3
0
    def test_set_list_detail_xslt(self):
        # Arrange
        user = create_mock_user("1")
        self.data.update(
            {
                "ids": [
                    str(self.fixture.xsl_transformation_1.id),
                    str(self.fixture.xsl_transformation_2.id),
                ]
            }
        )

        # Act
        response = RequestMock.do_request_patch(
            views.TemplateXslRenderingSetListDetailXslt.as_view(),
            user,
            param={"pk": str(self.fixture.template_xsl_rendering_2.id)},
            data=self.data,
        )

        # Assert

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(
            response.data["default_detail_xslt"],
            str(self.fixture.xsl_transformation_1.id),
        )
        self.assertEqual(len(response.data["list_detail_xslt"]), 2)
        self.assertIn(
            str(self.fixture.xsl_transformation_1.id), response.data["list_detail_xslt"]
        )
        self.assertIn(
            str(self.fixture.xsl_transformation_2.id), response.data["list_detail_xslt"]
        )
예제 #4
0
    def test_authenticated_returns_http_403(self):
        mock_user = create_mock_user("1")

        response = RequestMock.do_request_patch(
            settings_views.Settings.as_view(), mock_user)

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #5
0
    def test_anonymous_returns_http_403(self):
        # Act
        response = RequestMock.do_request_patch(
            workspace_rest_views.set_workspace_private, None, param={"pk": 0})

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #6
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            template_version_manager_views.CurrentTemplateVersion.as_view(),
            None
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #7
0
    def test_is_authenticated_returns_http_403(self):
        response = RequestMock.do_request_patch(
            xslt_views.XslTransformationDetail.as_view(),
            create_mock_user('1', is_anonymous=False),
            param={'pk': self.fake_id})

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_update_set(self):
        # Arrange
        user = create_mock_user('1', is_staff=True)

        # Act
        response = RequestMock.do_request_patch(
            rest_oai_provider_set.SetDetail.as_view(),
            user,
            data=self.data,
            param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(
            OaiProviderSet.objects.get(pk=self.first_set.id).set_spec,
            self.new_set_spec)
        self.assertEqual(
            OaiProviderSet.objects.get(pk=self.first_set.id).set_name,
            self.new_set_name)
        self.assertEqual(
            OaiProviderSet.objects.get(pk=self.first_set.id).description,
            self.new_description)
        self.assertEqual(
            OaiProviderSet.objects.get(pk=self.first_set.id).templates_manager,
            [self.new_template_version])
예제 #9
0
    def test_anonymous_returns_http_403(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.Harvest.as_view(), user=None, param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #10
0
    def test_staff_returns_http_200(
        self,
        mock_data_api_get_by_id,
        mock_user_api_get_by_id,
        mock_data_api_change_owner,
    ):
        # Arrange
        # is_staff to access the view
        # is_superuser to be able to change the owner
        user_request = create_mock_user("1", is_staff=True, is_superuser=True)
        mock_data_api_get_by_id.return_value = None
        mock_user_api_get_by_id.return_value = None
        mock_data_api_change_owner.return_value = None

        # Act
        response = RequestMock.do_request_patch(
            data_rest_views.DataChangeOwner.as_view(),
            user_request,
            param={
                "pk": 0,
                "user_id": 0
            },
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
예제 #11
0
    def test_harvest_registry(
        self,
        mock_metadata_formats,
        mock_sets_all,
        mock_sets_to_harvest,
        mock_harvest_by_metadata_formats,
        mock_get_by_id,
    ):
        # Arrange
        mock_registry = _create_mock_oai_registry()
        mock_get_by_id.return_value = mock_registry
        mock_metadata_formats.return_value = []
        mock_sets_all.return_value = [object(), object()]
        # Harvest all sets.
        mock_sets_to_harvest.return_value = mock_sets_all.return_value
        mock_harvest_by_metadata_formats.return_value = []

        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.Harvest.as_view(),
            user=create_mock_user("1", is_staff=True),
            param=self.param,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            persistent_query_example_views.PersistentQueryExampleDetail.as_view(),
            AnonymousUser(),
            param={"pk": 0},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #13
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            template_version_manager_views.RestoreTemplateVersionManager.as_view(),
            None,
            param={'pk': self.fake_id}
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            instance_views.InstanceDetail.as_view(),
            create_mock_user("1", is_anonymous=True),
            param={"pk": self.fake_id},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #15
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            bucket_views.TypeVersionManagerBuckets.as_view(),
            None,
            param={"pk": self.fake_id},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_is_authenticated_returns_http_403(self):
        response = RequestMock.do_request_patch(
            instance_views.InstanceRefreshToken.as_view(),
            create_mock_user("1", is_anonymous=False),
            param={"pk": self.fake_id},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            metadata_format_views.MetadataFormatDetail.as_view(),
            None,
            param={"set_id": self.fake_id},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #18
0
    def test_harvest_registry_unauthorized(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.Harvest.as_view(),
            user=create_mock_user('1', is_staff=False),
            param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #19
0
    def test_authenticated_returns_http_403(self):
        mock_user = create_mock_user("1")

        response = RequestMock.do_request_patch(
            bucket_views.BucketDetail.as_view(),
            mock_user,
            param={"pk": self.fake_id})

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_deactivate_registry(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.DeactivateRegistry.as_view(),
            user=create_mock_user('1', is_staff=True),
            param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
예제 #21
0
    def test_authenticated_returns_http_403(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.Harvest.as_view(),
            user=create_mock_user('1'),
            param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #22
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_patch(
            template_xsl_rendering_views.TemplateXslRenderingDetail.as_view(),
            None,
            param={"pk": str(ObjectId())},
            data={"list_xslt": str(ObjectId()), "default_detail_xslt": str(ObjectId())},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #23
0
    def test_patch_returns_status_403_if_user_is_not_admin(self, mock_save):
        # Arrange
        user = create_mock_user('0')

        # Act
        response = RequestMock.do_request_patch(instance_views.InstanceRefreshToken.as_view(), user, self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #24
0
    def test_assign_blob_to_workspace_updates_workspace(
        self, blob_get_by_id, workspace_get_by_id
    ):
        # Arrange
        blob = self.fixture.blob_collection[self.fixture.USER_1_WORKSPACE_1]
        user = create_mock_user(blob.user_id, is_superuser=True)
        blob_get_by_id.return_value = blob
        workspace_get_by_id.return_value = self.fixture.workspace_2

        # Act
        RequestMock.do_request_patch(
            views.BlobAssign.as_view(),
            user,
            param={"pk": blob.id, "workspace_id": self.fixture.workspace_2.id},
        )

        # Assert
        self.assertEqual(str(blob.workspace.id), str(self.fixture.workspace_2.id))
예제 #25
0
    def test_update_registry_info_unauthorized(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.InfoRegistry.as_view(),
            user=create_mock_user("1", is_staff=False),
            param=self.param,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_authenticated_returns_http_403(self):
        mock_user = create_mock_user("1")

        response = RequestMock.do_request_patch(
            metadata_format_views.MetadataFormatDetail.as_view(),
            mock_user,
            param={"set_id": self.fake_id},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #27
0
    def test_update_unauthorized(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_settings.Settings.as_view(),
            user=create_mock_user("1", is_staff=False),
            data=self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_update_registry_info(self):
        # Act
        response = RequestMock.do_request_patch(
            rest_oai_registry.RegistryDetail.as_view(),
            user=create_mock_user('1', is_staff=True),
            data=self.data,
            param=self.param)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
예제 #29
0
    def test_authenticated_returns_http_403(self):
        mock_user = create_mock_user('1')

        response = RequestMock.do_request_patch(
            template_version_manager_views.RestoreTemplateVersion.as_view(),
            mock_user,
            param={'pk': self.fake_id}
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
예제 #30
0
    def test_authenticated_returns_http_403(self):
        mock_user = create_mock_user("1")

        response = RequestMock.do_request_patch(
            template_version_manager_views.CurrentTemplateVersion.as_view(),
            mock_user,
            data={},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)