Beispiel #1
0
    def setUp(self):
        super(UpdateMenuActionTests, self).setUp()

        self.action = UpdateMenuAction()
Beispiel #2
0
class UpdateMenuActionTests(ActionsTestCase):
    """Unit tests for UpdateMenuAction."""

    fixtures = ['test_users']

    def setUp(self):
        super(UpdateMenuActionTests, self).setUp()

        self.action = UpdateMenuAction()

    def test_should_render_for_owner(self):
        """Testing UpdateMenuAction.should_render for owner of review request
        """
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertTrue(
            self.action.should_render({
                'review_request': review_request,
                'request': request,
                'perms': {
                    'reviews': {
                        'can_edit_reviewrequest': False,
                    },
                },
            }))

    def test_should_render_for_user(self):
        """Testing UpdateMenuAction.should_render for normal user"""
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = User.objects.create(username='******')

        self.assertFalse(
            self.action.should_render({
                'review_request': review_request,
                'request': request,
                'perms': {
                    'reviews': {
                        'can_edit_reviewrequest': False,
                    },
                },
            }))

    def test_should_render_user_with_can_edit_reviewrequest(self):
        """Testing UpdateMenuAction.should_render for user with
        can_edit_reviewrequest permission
        """
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = User.objects.create(username='******')

        self.assertTrue(
            self.action.should_render({
                'review_request': review_request,
                'request': request,
                'perms': {
                    'reviews': {
                        'can_edit_reviewrequest': True,
                    },
                },
            }))

    def test_should_render_with_discarded(self):
        """Testing UpdateMenuAction.should_render with discarded review request
        """
        review_request = \
            self.create_review_request(status=ReviewRequest.DISCARDED)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertFalse(
            self.action.should_render({
                'review_request': review_request,
                'request': request,
                'perms': {
                    'reviews': {
                        'can_edit_reviewrequest': False,
                    },
                },
            }))

    def test_should_render_with_submitted(self):
        """Testing UpdateMenuAction.should_render with submitted review request
        """
        review_request = \
            self.create_review_request(status=ReviewRequest.SUBMITTED)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertFalse(
            self.action.should_render({
                'review_request': review_request,
                'request': request,
                'perms': {
                    'reviews': {
                        'can_edit_reviewrequest': False,
                    },
                },
            }))
Beispiel #3
0
class UpdateMenuActionTests(ActionsTestCase):
    """Unit tests for UpdateMenuAction."""

    fixtures = ['test_users']

    def setUp(self):
        super(UpdateMenuActionTests, self).setUp()

        self.action = UpdateMenuAction()

    def test_should_render_for_owner(self):
        """Testing UpdateMenuAction.should_render for owner of review request
        """
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertTrue(self.action.should_render({
            'review_request': review_request,
            'request': request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': False,
                },
            },
        }))

    def test_should_render_for_user(self):
        """Testing UpdateMenuAction.should_render for normal user"""
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = User.objects.create(username='******')

        self.assertFalse(self.action.should_render({
            'review_request': review_request,
            'request': request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': False,
                },
            },
        }))

    def test_should_render_user_with_can_edit_reviewrequest(self):
        """Testing UpdateMenuAction.should_render for user with
        can_edit_reviewrequest permission
        """
        review_request = self.create_review_request(publish=True)

        request = RequestFactory().request()
        request.user = User.objects.create(username='******')

        self.assertTrue(self.action.should_render({
            'review_request': review_request,
            'request': request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': True,
                },
            },
        }))

    def test_should_render_with_discarded(self):
        """Testing UpdateMenuAction.should_render with discarded review request
        """
        review_request = \
            self.create_review_request(status=ReviewRequest.DISCARDED)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertFalse(self.action.should_render({
            'review_request': review_request,
            'request': request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': False,
                },
            },
        }))

    def test_should_render_with_submitted(self):
        """Testing UpdateMenuAction.should_render with submitted review request
        """
        review_request = \
            self.create_review_request(status=ReviewRequest.SUBMITTED)

        request = RequestFactory().request()
        request.user = review_request.submitter

        self.assertFalse(self.action.should_render({
            'review_request': review_request,
            'request': request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': False,
                },
            },
        }))
Beispiel #4
0
    def setUp(self):
        super(UpdateMenuActionTests, self).setUp()

        self.action = UpdateMenuAction()
Beispiel #5
0
class UpdateMenuActionTests(ReadOnlyActionTestsMixin, ActionsTestCase):
    """Unit tests for UpdateMenuAction."""

    action = UpdateMenuAction()
    fixtures = ['test_users']

    def _create_request_context(self,
                                public=True,
                                status=ReviewRequest.PENDING_REVIEW,
                                user=None,
                                can_edit_reviewrequest=True,
                                *args,
                                **kwargs):
        """Create and return objects for use in the request context.

        Args:
            public (bool, optional):
                Whether the review request should be public.

            status (unicode, optional):
                Review request status.

            user (django.contrib.auth.models.User, optional):
                The user to check visibility for.

            can_edit_reviewrequest (bool, optional):
                Whether the ``can_edit_reviewrequest`` permission should be
                set.

            *args (tuple):
                Positional arguments (unused).

            **kwargs (dict):
                Keyword arguments (unused).

        Returns:
            dict:
            Additional context to use when testing read-only actions.
        """
        review_request = self.create_review_request(public=public,
                                                    status=status)
        self.request.user = user or review_request.submitter

        return {
            'review_request': review_request,
            'request': self.request,
            'perms': {
                'reviews': {
                    'can_edit_reviewrequest': can_edit_reviewrequest,
                },
            },
        }

    def test_should_render_for_owner(self):
        """Testing UpdateMenuAction.should_render for owner of review request
        """
        self.assertTrue(
            self.action.should_render(
                self._create_request_context(can_edit_reviewrequest=False)))

    def test_should_render_for_user(self):
        """Testing UpdateMenuAction.should_render for normal user"""
        self.assertFalse(
            self.action.should_render(
                self._create_request_context(user=User.objects.create_user(
                    username='******', email='*****@*****.**'),
                                             can_edit_reviewrequest=False)))

    def test_should_render_user_with_can_edit_reviewrequest(self):
        """Testing UpdateMenuAction.should_render for user with
        can_edit_reviewrequest permission
        """
        self.assertTrue(
            self.action.should_render(
                self._create_request_context(user=User.objects.create_user(
                    username='******', email='*****@*****.**'))))

    def test_should_render_with_discarded(self):
        """Testing UpdateMenuAction.should_render with discarded review request
        """
        self.assertFalse(
            self.action.should_render(
                self._create_request_context(status=ReviewRequest.DISCARDED,
                                             can_edit_reviewrequest=False)))

    def test_should_render_with_submitted(self):
        """Testing UpdateMenuAction.should_render with submitted review request
        """
        self.assertFalse(
            self.action.should_render(
                self._create_request_context(status=ReviewRequest.SUBMITTED,
                                             can_edit_reviewrequest=False)))