Ejemplo n.º 1
0
    def test_list(self):
        """
        Verify that GET returns a list of pinned pull reuqests that are from the
        authenticated user and selected repository.
        """
        path = self._get_url_pin_pull_request_list(repository_id=3)
        self.client.post(path, data={'pull_request_id': 18})

        self.client.force_authenticate(user=UserFactory())
        self.client.post(path, data={'pull_request_id': 752})

        self.client.force_authenticate(user=self.user)
        self.client.post(
            path=self._get_url_pin_pull_request_list(repository_id=44),
            data={'pull_request_id': 52},
        )

        response = self.client.get(path)
        pinned_pull_requests = PinnedPullRequest.objects.filter(
            ext_repository_id=3, user=self.user)
        serializer = PinnedPullRequestSerializer(pinned_pull_requests,
                                                 many=True)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data, serializer.data)
Ejemplo n.º 2
0
def create_request(user=None):
    if user is None:
        user = UserFactory()

    request = APIRequestFactory().get('/')
    request.user = user
    return request
Ejemplo n.º 3
0
    def test_delete_only_given_users_pinned_comments(self):
        """Verify that a user can unpin only his own comments."""
        self.client.force_authenticate(user=UserFactory())
        path = self._get_url_pin_comment_list(repository_id=3, issue_id=14)
        response = self.client.post(path, data={'comment_id': 25})

        pk = response.json().get('id')
        self.client.force_authenticate(user=self.user)
        path = self._get_url_pin_comment_detail(repository_id=3, issue_id=14, pk=pk)
        response = self.client.delete(path)

        self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
        self.assertEqual(PinnedComment.objects.count(), 1)
Ejemplo n.º 4
0
    def test_list(self):
        """Verify that GET returns a list of pinned comments that are from the
        authenticated user, selected repository and issue.
        """
        path = self._get_url_pin_comment_list(repository_id=5, issue_id=512)
        self.client.post(path, data={'comment_id': 523})

        self.client.force_authenticate(user=UserFactory())
        self.client.post(path, data={'comment_id': 25})

        self.client.force_authenticate(user=self.user)
        response = self.client.get(path)

        pinned_comments = PinnedComment.objects.filter(user=self.user)
        serializer = PinnedCommentSerializer(pinned_comments, many=True)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data, serializer.data)
Ejemplo n.º 5
0
 def setUpTestData(cls):
     cls.user = UserFactory()