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)
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)
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)
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)
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)
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)