def test_resolve_one_of_two_comment_with_admin(self): CommentFactory.create(**{ 'commentto': self.observation, 'creator': self.creator, 'review_status': 'open' }) url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.DATA = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.comment) ) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved' ) self.assertEqual( Observation.objects.get(pk=self.observation.id).status, 'review' )
def test_resolve_one_of_two_comment_with_admin(self): CommentFactory.create(**{ 'commentto': self.contribution, 'creator': self.creator, 'review_status': 'open' }) url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.data = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.contribution, self.comment) ) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved' ) self.assertEqual( Observation.objects.get(pk=self.contribution.id).status, 'review' )
def test_create_comment_with_admin(self): url = reverse( "api:project_comments", kwargs={"project_id": self.project.id, "contribution_id": self.contribution.id} ) request = self.factory.post(url, {"text": "Comment"}) request.user = self.admin request.data = {"text": "Comment"} view = CommentAbstractAPIView() response = self.render(view.create_and_respond(request, self.contribution)) self.assertEqual(json.loads(response.content).get("text"), "Comment")
def test_resolve_comment_with_commenter(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.commenter request.data = {'review_status': 'resolved'} view = CommentAbstractAPIView() view.update_and_respond(request, self.contribution, self.comment)
def test_resolve_comment_with_anonymous(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = AnonymousUser() request.data = {'review_status': 'resolved'} view = CommentAbstractAPIView() view.update_and_respond(request, self.contribution, self.comment)
def test_resolve_comment_with_anonymous(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = AnonymousUser() request.DATA = {'review_status': 'resolved'} view = CommentAbstractAPIView() view.update_and_respond(request, self.comment)
def test_resolve_comment_with_commenter(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.commenter request.DATA = {'review_status': 'resolved'} view = CommentAbstractAPIView() view.update_and_respond(request, self.comment)
def test_create_comment_with_admin(self): url = reverse('api:project_comments', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id }) request = self.factory.post(url, {'text': 'Comment'}) request.user = self.admin request.data = {'text': 'Comment'} view = CommentAbstractAPIView() response = self.render( view.create_and_respond(request, self.contribution) ) self.assertEqual(json.loads(response.content).get('text'), 'Comment')
def test_create_comment_with_admin(self): url = reverse('api:project_comments', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id }) request = self.factory.post(url, {'text': 'Comment'}) request.user = self.admin request.DATA = {'text': 'Comment'} view = CommentAbstractAPIView() response = self.render( view.create_and_respond(request, self.observation) ) self.assertEqual(json.loads(response.content).get('text'), 'Comment')
def test_resolve_comment_with_anonymous(self): url = reverse( "api:project_single_comment", kwargs={ "project_id": self.project.id, "contribution_id": self.contribution.id, "comment_id": self.comment.id, }, ) request = self.factory.patch(url, {"text": "Updated"}) request.user = AnonymousUser() request.data = {"review_status": "resolved"} view = CommentAbstractAPIView() view.update_and_respond(request, self.contribution, self.comment)
def test_create_reviewcomment_to_empty_obs_with_admin(self): self.contribution.properties = None self.contribution.save() url = reverse( "api:project_comments", kwargs={"project_id": self.project.id, "contribution_id": self.contribution.id} ) request = self.factory.post(url, {"text": "Comment", "review_status": "open"}) request.user = self.admin request.data = {"text": "Comment", "review_status": "open"} view = CommentAbstractAPIView() response = self.render(view.create_and_respond(request, self.contribution)) self.assertEqual(json.loads(response.content).get("text"), "Comment") ref = Observation.objects.get(pk=self.contribution.id) self.assertEqual(ref.status, "review")
def test_update_comment_with_moderator(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.moderator request.DATA = {'text': 'Updated'} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.comment)) self.assertEqual(json.loads(response.content).get('text'), 'Updated') self.assertEqual( Comment.objects.get(pk=self.comment.id).text, 'Updated')
def test_resolve_comment_with_invalid_review_status(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.DATA = {'review_status': 'closed'} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.comment)) ref = Comment.objects.get(pk=self.comment.id) self.assertEqual(response.status_code, 400) self.assertEqual(ref.review_status, 'open')
def test_resolve_comment_with_moderator(self): url = reverse( "api:project_single_comment", kwargs={ "project_id": self.project.id, "contribution_id": self.contribution.id, "comment_id": self.comment.id, }, ) request = self.factory.patch(url, {"text": "Updated"}) request.user = self.moderator request.data = {"review_status": "resolved"} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.contribution, self.comment)) self.assertEqual(json.loads(response.content).get("review_status"), "resolved") self.assertEqual(Observation.objects.get(pk=self.contribution.id).status, "active")
def test_update_comment_with_admin(self): url = reverse( "api:project_single_comment", kwargs={ "project_id": self.project.id, "contribution_id": self.contribution.id, "comment_id": self.comment.id, }, ) request = self.factory.patch(url, {"text": "Updated"}) request.user = self.admin request.data = {"text": "Updated"} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.contribution, self.comment)) self.assertEqual(json.loads(response.content).get("text"), "Updated") self.assertEqual(Comment.objects.get(pk=self.comment.id).text, "Updated")
def test_resolve_comment_with_moderator(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.moderator request.data = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.contribution, self.comment)) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved') self.assertEqual( Observation.objects.get(pk=self.contribution.id).status, 'active')
def test_resolve_comment_with_invalid_review_status(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.DATA = {'review_status': 'closed'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.comment) ) ref = Comment.objects.get(pk=self.comment.id) self.assertEqual(response.status_code, 400) self.assertEqual(ref.review_status, 'open')
def test_create_reviewcomment_with_admin(self): url = reverse('api:project_comments', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id }) request = self.factory.post( url, {'text': 'Comment', 'review_status': 'open'} ) request.user = self.admin request.data = {'text': 'Comment', 'review_status': 'open'} view = CommentAbstractAPIView() response = self.render( view.create_and_respond(request, self.contribution) ) self.assertEqual(json.loads(response.content).get('text'), 'Comment') ref = Observation.objects.get(pk=self.contribution.id) self.assertEqual(ref.status, 'review')
def test_create_reviewcomment_with_admin(self): url = reverse('api:project_comments', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id }) request = self.factory.post(url, { 'text': 'Comment', 'review_status': 'open' }) request.user = self.admin request.DATA = {'text': 'Comment', 'review_status': 'open'} view = CommentAbstractAPIView() response = self.render( view.create_and_respond(request, self.observation)) self.assertEqual(json.loads(response.content).get('text'), 'Comment') ref = Observation.objects.get(pk=self.observation.id) self.assertEqual(ref.status, 'review')
def test_update_comment_with_moderator(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.moderator request.DATA = {'text': 'Updated'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.comment) ) self.assertEqual(json.loads(response.content).get('text'), 'Updated') self.assertEqual( Comment.objects.get(pk=self.comment.id).text, 'Updated' )
def test_resolve_comment_with_invalid_review_status(self): url = reverse( "api:project_single_comment", kwargs={ "project_id": self.project.id, "contribution_id": self.contribution.id, "comment_id": self.comment.id, }, ) request = self.factory.patch(url, {"text": "Updated"}) request.user = self.admin request.data = {"review_status": "closed"} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.contribution, self.comment)) ref = Comment.objects.get(pk=self.comment.id) self.assertEqual(response.status_code, 400) self.assertEqual(ref.review_status, "open")
def test_resolve_one_of_two_comment_with_admin(self): CommentFactory.create(**{"commentto": self.contribution, "creator": self.creator, "review_status": "open"}) url = reverse( "api:project_single_comment", kwargs={ "project_id": self.project.id, "contribution_id": self.contribution.id, "comment_id": self.comment.id, }, ) request = self.factory.patch(url, {"text": "Updated"}) request.user = self.admin request.data = {"review_status": "resolved"} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.contribution, self.comment)) self.assertEqual(json.loads(response.content).get("review_status"), "resolved") self.assertEqual(Observation.objects.get(pk=self.contribution.id).status, "review")
def test_resolve_comment_with_admin(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.DATA = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render(view.update_and_respond(request, self.comment)) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved') reference = Observation.objects.get(pk=self.observation.id) self.assertEqual(reference.status, 'active') self.assertIsNotNone(reference.properties)
def test_resolve_comment_with_admin(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'observation_id': self.observation.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.admin request.DATA = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.comment) ) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved' ) reference = Observation.objects.get(pk=self.observation.id) self.assertEqual(reference.status, 'active') self.assertIsNotNone(reference.properties)
def test_resolve_comment_with_moderator(self): url = reverse('api:project_single_comment', kwargs={ 'project_id': self.project.id, 'contribution_id': self.contribution.id, 'comment_id': self.comment.id }) request = self.factory.patch(url, {'text': 'Updated'}) request.user = self.moderator request.data = {'review_status': 'resolved'} view = CommentAbstractAPIView() response = self.render( view.update_and_respond(request, self.contribution, self.comment) ) self.assertEqual( json.loads(response.content).get('review_status'), 'resolved' ) self.assertEqual( Observation.objects.get(pk=self.contribution.id).status, 'active' )