def test_post_with_http_303(self): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API with second instance of same reply """ comment_text = "My New Comment Text" review_request = self.create_review_request( create_repository=True, publish=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=self.user) reply_comment = self.create_diff_comment(reply, filediff, reply_to=comment) # Now do it again. rsp = self.api_post( get_review_reply_diff_comment_list_url(reply), { 'reply_to_id': comment.pk, 'text': comment_text }, expected_status=303, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text)
def test_post_with_http_303(self): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API with second instance of same reply """ comment_text = "My New Comment Text" review_request = self.create_review_request(create_repository=True, publish=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=self.user) reply_comment = self.create_diff_comment(reply, filediff, reply_to=comment) # Now do it again. rsp = self.api_post( get_review_reply_diff_comment_list_url(reply), { 'reply_to_id': comment.pk, 'text': comment_text }, expected_status=303, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text)
def test_post_reply_with_diff_comment(self): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API""" comment_text = "My Comment Text" review_request = self.create_review_request(create_repository=True, submitter=self.user) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review_request.publish(review_request.submitter) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=self.user) diff_comments_url = get_review_reply_diff_comment_list_url(reply) rsp = self.apiPost( diff_comments_url, { 'reply_to_id': comment.id, 'text': comment_text, }, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text) return rsp, comment, diff_comments_url
def test_post_reply_with_diff_comment(self): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API """ comment_text = "My Comment Text" review_request = self.create_review_request(create_repository=True, submitter=self.user) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review_request.publish(review_request.submitter) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=self.user) diff_comments_url = get_review_reply_diff_comment_list_url(reply) rsp = self.apiPost( diff_comments_url, { 'reply_to_id': comment.id, 'text': comment_text, }, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text) return rsp, comment, diff_comments_url
def setup_review_request_child_test(self, review_request): if not review_request.repository_id: # The group tests don't create a repository by default. review_request.repository = self.create_repository() review_request.save() diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review_request.publish(review_request.submitter) review = self.create_review(review_request, publish=True) self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=self.user) return (get_review_reply_diff_comment_list_url(reply), review_reply_diff_comment_list_mimetype)
def setup_basic_post_test(self, user, with_local_site, local_site_name, post_valid_data): review_request = self.create_review_request( create_repository=True, with_local_site=with_local_site, submitter=user, publish=True ) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, user=user, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) return ( get_review_reply_diff_comment_list_url(reply, local_site_name), review_reply_diff_comment_item_mimetype, {"reply_to_id": comment.pk, "text": "Test comment"}, [reply, comment], )
def test_post_reply_with_diff_comment_and_local_site(self, badlogin=False): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API with a local site """ comment_text = 'My Comment Text' user = self._login_user(local_site=True) review_request = self.create_review_request(create_repository=True, submitter=self.user, with_local_site=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review_request.publish(review_request.submitter) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) diff_comments_url = \ get_review_reply_diff_comment_list_url(reply, self.local_site_name) post_data = { 'reply_to_id': comment.pk, 'text': comment_text, } if badlogin: self._login_user() rsp = self.apiPost(diff_comments_url, post_data, expected_status=403) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code) else: rsp = self.apiPost( diff_comments_url, post_data, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text) return rsp, comment, diff_comments_url
def setup_basic_post_test(self, user, with_local_site, local_site_name, post_valid_data): review_request = self.create_review_request( create_repository=True, with_local_site=with_local_site, submitter=user, publish=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, user=user, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) return (get_review_reply_diff_comment_list_url(reply, local_site_name), review_reply_diff_comment_item_mimetype, { 'reply_to_id': comment.pk, 'text': 'Test comment', }, [reply, comment])
def test_post_reply_with_diff_comment_and_local_site(self, badlogin=False): """Testing the POST review-requests/<id>/reviews/<id>/replies/<id>/diff-comments/ API with a local site""" comment_text = 'My Comment Text' user = self._login_user(local_site=True) review_request = self.create_review_request(create_repository=True, submitter=self.user, with_local_site=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review_request.publish(review_request.submitter) review = self.create_review(review_request, publish=True) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) diff_comments_url = \ get_review_reply_diff_comment_list_url(reply, self.local_site_name) post_data = { 'reply_to_id': comment.pk, 'text': comment_text, } if badlogin: self._login_user() rsp = self.apiPost(diff_comments_url, post_data, expected_status=403) self.assertEqual(rsp['stat'], 'fail') self.assertEqual(rsp['err']['code'], PERMISSION_DENIED.code) else: rsp = self.apiPost( diff_comments_url, post_data, expected_mimetype=review_reply_diff_comment_item_mimetype) self.assertEqual(rsp['stat'], 'ok') reply_comment = Comment.objects.get(pk=rsp['diff_comment']['id']) self.assertEqual(reply_comment.text, comment_text) return rsp, comment, diff_comments_url
def setup_basic_get_test(self, user, with_local_site, local_site_name, populate_items): review_request = self.create_review_request( create_repository=True, with_local_site=with_local_site, submitter=user, publish=True ) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, user=user) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) if populate_items: items = [self.create_diff_comment(reply, filediff, reply_to=comment)] else: items = [] return ( get_review_reply_diff_comment_list_url(reply, local_site_name), review_reply_diff_comment_list_mimetype, items, )
def setup_basic_get_test(self, user, with_local_site, local_site_name, populate_items): review_request = self.create_review_request( create_repository=True, with_local_site=with_local_site, submitter=user, publish=True) diffset = self.create_diffset(review_request) filediff = self.create_filediff(diffset) review = self.create_review(review_request, user=user) comment = self.create_diff_comment(review, filediff) reply = self.create_reply(review, user=user) if populate_items: items = [ self.create_diff_comment(reply, filediff, reply_to=comment), ] else: items = [] return (get_review_reply_diff_comment_list_url(reply, local_site_name), review_reply_diff_comment_list_mimetype, items)