Beispiel #1
0
    def test_post_query_string_one_data_returns_one_data(self):
        # Arrange
        self.data.update({"query": "{\"root.element\": \"value\"}"})

        # Act
        response = RequestMock.do_request_post(
            data_rest_views.ExecuteLocalQueryView.as_view(),
            self.user,
            data=self.data)

        # Assert
        self.assertEqual(len(response.data), 1)
Beispiel #2
0
    def test_anonymous_returns_http_200(self, mock_execute_query):
        # Arrange
        data = self.one_record_data
        mock_execute_query.return_value = Response(status=status.HTTP_200_OK)

        # Act
        response = RequestMock.do_request_post(
            query_views.ExecuteQueryView.as_view(), None, data=data
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
    def test_post_query_one_data_returns_one_data(self):
        # Arrange
        data = self.one_record_data

        # Act
        response = RequestMock.do_request_post(
            oai_record_rest_views.ExecuteQueryView.as_view(),
            self.user,
            data=data)

        # Assert
        self.assertEqual(len(response.data), 1)
    def test_post_empty_types_returns_http_201(self):
        # Arrange
        user = create_mock_user("1", is_staff=True)
        self.data["types"] = []

        # Act
        response = RequestMock.do_request_post(views.BucketList.as_view(),
                                               user,
                                               data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
    def test_post_query_one_data_returns_http_200(self):
        # Arrange
        data = self.one_record_data

        # Act
        response = RequestMock.do_request_post(
            oai_record_rest_views.ExecuteQueryView.as_view(),
            self.user,
            data=data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
    def test_post_query_zero_data_returns_zero_data(self):
        # Arrange
        data = {"query": '{"bad.path": "bad_value"}'}

        # Act
        response = RequestMock.do_request_post(
            oai_record_rest_views.ExecuteQueryView.as_view(),
            self.user,
            data=data)

        # Assert
        self.assertEqual(len(response.data), 0)
Beispiel #7
0
    def test_anonymous_returns_http_403(self):
        response = RequestMock.do_request_post(
            template_xsl_rendering_views.TemplateXslRenderingList.as_view(),
            None,
            data={
                "template": str(ObjectId()),
                "list_xslt": str(ObjectId()),
                "default_detail_xslt": str(ObjectId()),
            },
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_post_with_one_correct_type_returns_http_201(self):
        # Arrange
        user = create_mock_user("1", is_staff=True)
        self.data["types"] = [str(self.fixture.type_vm_1.id)]

        # Act
        response = RequestMock.do_request_post(views.BucketList.as_view(),
                                               user,
                                               data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #9
0
    def test_post_query_json_returns_http_200(self):
        # Arrange
        self.data.update({"query": {}})

        # Act
        response = RequestMock.do_request_post(
            data_rest_views.ExecuteLocalQueryView.as_view(),
            self.user,
            data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Beispiel #10
0
    def test_post_query_json_string_returns_data_1(self):
        # Arrange
        self.data.update({"query": {"root.complex.child1": "test"}})

        # Act
        response = RequestMock.do_request_post(
            data_rest_views.ExecuteLocalQueryView.as_view(),
            self.user,
            data=self.data)

        # Assert
        self.assertEqual(len(response.data), 1)
Beispiel #11
0
    def test_post_returns_http_201(self):
        # Arrange

        # Act
        response = RequestMock.do_request_post(
            data_structure_rest_views.CurateDataStructureList.as_view(),
            self.user,
            data=self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #12
0
    def test_post_query_string_one_data_returns_http_200(self):
        # Arrange
        self.data.update({"query": '{"root.element": "value"}'})

        # Act
        response = RequestMock.do_request_post(
            data_rest_views.ExecuteLocalQueryView.as_view(),
            self.user,
            data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Beispiel #13
0
    def test_post_incorrect_file_parameter_returns_http_400(self):
        # Arrange
        user = create_mock_user("1")
        self.data["blob"] = "test.txt"

        # Act
        response = RequestMock.do_request_post(
            views.BlobList.as_view(), user, data=self.data
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
    def test_post_type_name_already_exists_returns_http_400(self):
        # Arrange
        user = create_mock_user("1")
        self.data["title"] = self.fixture.type_vm_1.title

        # Act
        response = RequestMock.do_request_post(views.UserTypeList.as_view(),
                                               user,
                                               data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
Beispiel #15
0
    def test_post_query_json_regex_returns_all_data(self):
        # Arrange
        self.data.update({"query": {"root.element": "/.*/"}})

        # Act
        response = RequestMock.do_request_post(
            data_rest_views.ExecuteLocalQueryView.as_view(),
            self.user,
            data=self.data)

        # Assert
        self.assertEqual(len(response.data), len(self.fixture.data_collection))
    def test_post_with_one_incorrect_type_returns_http_400(self):
        # Arrange
        user = create_mock_user("1", is_staff=True)
        self.data["types"] = ["wrong_type_id"]

        # Act
        response = RequestMock.do_request_post(views.BucketList.as_view(),
                                               user,
                                               data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
    def test_staff_returns_http_201(self, data_serializer_data,
                                    data_serializer_save,
                                    data_serializer_valid):
        data_serializer_valid.return_value = True
        data_serializer_save.return_value = None
        data_serializer_data.return_value = {}

        mock_user = create_mock_user("1", is_staff=True)

        response = RequestMock.do_request_post(
            data_rest_views.DataList.as_view(), mock_user)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #18
0
    def test_post_data_structure_missing_field_returns_http_400(self):
        # Arrange
        self.data = {"user": "******", "name": "name", "form_string": "<tag></tag>"}

        # Act
        response = RequestMock.do_request_post(
            data_structure_rest_views.AdminCurateDataStructureList.as_view(),
            self.user,
            data=self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
Beispiel #19
0
    def test_post_incorrect_parameter_returns_http_400(self):
        # Arrange
        self.data["template"] = "507f1f77bcf86cd799439011"

        # Act
        response = RequestMock.do_request_post(
            data_structure_rest_views.AdminCurateDataStructureList.as_view(),
            self.user,
            data=self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
Beispiel #20
0
    def test_authenticated_returns_http_200(self, mock_execute_query):
        # Arrange
        user = create_mock_user("1")
        data = self.one_record_data
        mock_execute_query.return_value = Response(status=status.HTTP_200_OK)

        # Act
        response = RequestMock.do_request_post(
            query_views.ExecuteQueryView.as_view(), user=user, data=data
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_200_OK)
    def test_is_staff_returns_http_201(
        self,
        contact_serializer_data,
        contact_serializer_save,
        contact_serializer_is_valid,
    ):
        response = RequestMock.do_request_post(
            contact_message_views.ContactMessageList.as_view(),
            create_mock_user("1", is_staff=True),
            data=self.mock_data,
        )

        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #22
0
    def test_staff_returns_http_201(self, mock_blob_serializer_is_valid,
                                    mock_blob_serializer_save,
                                    mock_blob_serializer_data):
        mock_blob_serializer_is_valid.return_value = True
        mock_blob_serializer_save.return_value = None
        mock_blob_serializer_data.return_value = []

        mock_user = create_mock_user('1', is_staff=True)

        response = RequestMock.do_request_post(
            blob_rest_views.BlobList.as_view(), mock_user)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #23
0
    def post_wrong_id_returns_http_404(self):
        # Arrange
        user = create_mock_user('1', is_superuser=True)

        # Act
        response = RequestMock.do_request_post(
            views.TemplateVersion.as_view(),
            user,
            data=self.data,
            param={'pk': '507f1f77bcf86cd799439011'})

        # Assert
        self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
    def test_post_with_one_correct_type_returns_response_containing_one_type(
            self):
        # Arrange
        user = create_mock_user("1", is_staff=True)
        self.data["types"] = [str(self.fixture.type_vm_1.id)]

        # Act
        response = RequestMock.do_request_post(views.BucketList.as_view(),
                                               user,
                                               data=self.data)

        # Assert
        self.assertEqual(len(response.data["types"]), 1)
Beispiel #25
0
    def post_to_other_user_as_superuser_returns_http_201(self):
        # Arrange
        user = create_mock_user('2', is_superuser=True)

        # Act
        response = RequestMock.do_request_post(
            views.TemplateVersion.as_view(),
            user,
            data=self.data,
            param={'pk': str(self.fixture.template_vm_2.id)})

        # Assert
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
    def test_add_metadata_format_unauthorized(self):
        # Arrange
        user = create_mock_user("1", is_staff=False)

        # Act
        response = RequestMock.do_request_post(
            rest_oai_provider_metadata_format.MetadataFormatsList.as_view(),
            user,
            self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_post_returns_http_201(self):
        # Arrange

        # Act
        response = RequestMock.do_request_post(
            persistent_query_example_views.AdminPersistentQueryExampleList.
            as_view(),
            self.user,
            data=self.data,
        )

        # Assert
        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Beispiel #28
0
    def post_to_global_as_user_returns_http_403(self):
        # Arrange
        user = create_mock_user('2')

        # Act
        response = RequestMock.do_request_post(
            views.TemplateVersion.as_view(),
            user,
            data=self.data,
            param={'pk': str(self.fixture.template_vm_1.id)})

        # Assert
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
    def test_staff_migration_returns_http_403(self):
        # Arrange
        request_user = create_mock_user("1", is_staff=True)

        # Act
        response = RequestMock.do_request_post(
            data_migration.as_view(),
            request_user,
            param={"pk": self.fake_id},
            data={"data": f'["{self.fake_id}"]'},
        )

        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
Beispiel #30
0
    def test_add_registry_raises_exception_if_url_already_exists(
            self, mock_check):
        # Arrange
        mock_check.return_value = True

        # Act
        response = RequestMock.do_request_post(
            rest_oai_registry.RegistryList.as_view(),
            user=create_mock_user('1', is_staff=True),
            data=self.data)

        # Assert
        self.assertEqual(response.status_code, status.HTTP_409_CONFLICT)