def test_dislikedit_cancels_likedit(self): if django.VERSION < (1, 5): return comment = django_comments.get_model()\ .objects.for_app_models('tests.diary')[0] like_url = reverse("comments-xtd-like", args=[comment.id]) request = request_factory.post(like_url) request.user = self.user request._dont_enforce_csrf_checks = True response = views.like(request, comment.id) flags = CommentFlag.objects.filter(comment=comment, user=self.user, flag=LIKEDIT_FLAG) self.assertTrue(flags.count() == 1) # Now we liked the comment again to cancel the flag. dislike_url = reverse("comments-xtd-dislike", args=[comment.id]) request = request_factory.post(dislike_url) request.user = self.user request._dont_enforce_csrf_checks = True response = views.dislike(request, comment.id) flags = CommentFlag.objects.filter(comment=comment, user=self.user, flag=LIKEDIT_FLAG) self.assertTrue(flags.count() == 0) flags = CommentFlag.objects.filter(comment=comment, user=self.user, flag=DISLIKEDIT_FLAG) self.assertTrue(flags.count() == 1)
def test_loggedin_user_can_dislike(self): if django.VERSION < (1, 5): return comment = django_comments.get_model()\ .objects.for_app_models('tests.diary')[0] dislike_url = reverse("comments-xtd-dislike", args=[comment.id]) request = request_factory.get(dislike_url) request.user = self.user response = views.dislike(request, comment.id) self.assertEqual(response.status_code, 200) self.assertTrue(response.content.find(b'value="I dislike it"') > -1) request = request_factory.post(dislike_url) request.user = self.user request._dont_enforce_csrf_checks = True response = views.dislike(request, comment.id) self.assertEqual(response.status_code, 302) self.assertEqual(response.url, reverse("comments-xtd-dislike-done") + "?c=1") flags = CommentFlag.objects.filter(comment=comment, user=self.user, flag=DISLIKEDIT_FLAG) self.assertTrue(flags.count() == 1)
def test_anonymous_user_is_redirected(self): comment = django_comments.get_model()\ .objects.for_app_models('tests.diary')[0] # Like it. like_url = reverse("comments-xtd-like", args=[comment.id]) request = request_factory.get(like_url) request.user = AnonymousUser() response = views.like(request, comment.id) dest_url = '/accounts/login/?next=/comments/like/1/' self.assertEqual(response.status_code, 302) self.assertEqual(response.url, dest_url) # Dislike it. dislike_url = reverse("comments-xtd-dislike", args=[comment.id]) request = request_factory.get(dislike_url) request.user = AnonymousUser() response = views.dislike(request, comment.id) dest_url = '/accounts/login/?next=/comments/dislike/1/' self.assertEqual(response.status_code, 302) self.assertEqual(response.url, dest_url)