Esempio n. 1
0
    def test_get_patch_private_repository(self):
        """Testing the GET <URL> API with Accept: text/x-patch on a private
        repository
        """
        doc = User.objects.get(username='******')

        repository = self.create_repository(tool_name='Git', public=False)
        repository.users = [doc]

        review_request = self.create_review_request(repository=repository,
                                                    submitter=doc)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset, repository=repository)

        self.client.login(username='******', password='******')

        with override_feature_checks(self.override_features):
            rsp = self.api_get(
                get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id),
                expected_mimetype='text/x-patch',
                expected_json=False,
                HTTP_ACCEPT='text/x-patch')

        self.assertEqual(self.DEFAULT_GIT_FILEDIFF_DATA_DIFF, rsp)
Esempio n. 2
0
    def test_get_patch_private_repository(self):
        """Testing the GET <URL> API with Accept: text/x-patch on a private
        repository
        """
        doc = User.objects.get(username='******')

        repository = self.create_repository(tool_name='Git', public=False)
        repository.users = [doc]

        review_request = self.create_review_request(repository=repository,
                                                    submitter=doc)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset, repository=repository)

        self.client.login(username='******', password='******')

        with override_feature_checks(self.override_features):
            rsp = self.api_get(
                get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id),
                expected_mimetype='text/x-patch',
                expected_json=False,
                HTTP_ACCEPT='text/x-patch')

        self.assertEqual(self.DEFAULT_GIT_FILEDIFF_DATA, rsp)
Esempio n. 3
0
 def setup_http_not_allowed_item_test(self, user):
     repository = self.create_repository(tool_name='Git')
     review_request = self.create_review_request(
         repository=repository,
         public=True)
     diffset = self.create_diffset(review_request=review_request)
     commit = self.create_diffcommit(diffset=diffset,
                                     repository=repository)
     return get_diffcommit_item_url(review_request, diffset.revision,
                                    commit.commit_id)
Esempio n. 4
0
 def setup_http_not_allowed_item_test(self, user):
     repository = self.create_repository(tool_name='Git')
     review_request = self.create_review_request(
         repository=repository,
         public=True)
     diffset = self.create_diffset(review_request=review_request)
     commit = self.create_diffcommit(diffset=diffset,
                                     repository=repository)
     return get_diffcommit_item_url(review_request, diffset.revision,
                                    commit.commit_id)
Esempio n. 5
0
    def setup_review_request_child_test(self, review_request):
        diffset = self.create_diffset(review_request=review_request)
        review_request.extra_data[
            ReviewRequest._CREATED_WITH_HISTORY_EXTRA_DATA_KEY] = True
        review_request.save(update_fields=('extra_data',))
        commit = self.create_diffcommit(diffset=diffset,
                                        repository=review_request.repository)

        return (get_diffcommit_item_url(review_request,
                                        diffset.revision,
                                        commit.commit_id),
                diffcommit_item_mimetype)
Esempio n. 6
0
    def setup_review_request_child_test(self, review_request):
        diffset = self.create_diffset(review_request=review_request)
        review_request.extra_data[
            ReviewRequest._CREATED_WITH_HISTORY_EXTRA_DATA_KEY] = True
        review_request.save(update_fields=('extra_data',))
        commit = self.create_diffcommit(diffset=diffset,
                                        repository=review_request.repository)

        return (get_diffcommit_item_url(review_request,
                                        diffset.revision,
                                        commit.commit_id),
                diffcommit_item_mimetype)
Esempio n. 7
0
    def setup_basic_get_test(self, user, with_local_site, local_site_name):
        repository = self.create_repository(tool_name='Git')
        review_request = self.create_review_request(
            repository=repository,
            submitter=user,
            with_local_site=with_local_site)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset,
                                        repository=repository)

        return (get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id, local_site_name),
                diffcommit_item_mimetype,
                commit)
Esempio n. 8
0
    def setup_basic_get_test(self, user, with_local_site, local_site_name):
        repository = self.create_repository(tool_name='Git')
        review_request = self.create_review_request(
            repository=repository,
            submitter=user,
            with_local_site=with_local_site)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset,
                                        repository=repository)

        return (get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id, local_site_name),
                diffcommit_item_mimetype,
                commit)
Esempio n. 9
0
    def test_get_patch_private_repository_no_access(self):
        """Testing the GET <URL> API with Accept: text/x-patch on a private
        repository
        """
        doc = User.objects.get(username='******')

        repository = self.create_repository(tool_name='Git', public=False)
        repository.users = [doc]

        review_request = self.create_review_request(repository=repository,
                                                    submitter=doc)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset, repository=repository)

        with override_feature_checks(self.override_features):
            rsp = self.api_get(
                get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id),
                expected_status=403)

        self.assertEqual(rsp['stat'], 'fail')
        self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code)
Esempio n. 10
0
    def test_get_patch_private_repository_no_access(self):
        """Testing the GET <URL> API with Accept: text/x-patch on a private
        repository
        """
        doc = User.objects.get(username='******')

        repository = self.create_repository(tool_name='Git', public=False)
        repository.users = [doc]

        review_request = self.create_review_request(repository=repository,
                                                    submitter=doc)
        diffset = self.create_diffset(review_request)
        commit = self.create_diffcommit(diffset=diffset, repository=repository)

        with override_feature_checks(self.override_features):
            rsp = self.api_get(
                get_diffcommit_item_url(review_request, diffset.revision,
                                        commit.commit_id),
                expected_status=403)

        self.assertEqual(rsp['stat'], 'fail')
        self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code)