def test_render_list_titles(self):
        role1 = mock.MagicMock()
        role1.id = 1
        role1.title = 'Role One'
        role2 = mock.MagicMock()
        role2.id = 2
        role2.title = 'Role Two'
        cradmin_instance = self.__mock_cradmin_instance(roles=[role1, role2])

        cradmin_instance_registry = mock.MagicMock()
        cradmin_instance_registry.get_current_instance.return_value = cradmin_instance
        with mock.patch(
                'cradmin_legacy.views.roleselect.cradmin_instance_registry',
                cradmin_instance_registry):
            with mock.patch(
                    'cradmin_legacy.templatetags.cradmin_legacy_tags.cradmin_instance_registry',
                    cradmin_instance_registry):
                request = self.factory.get('/roleselecttest')
                response = RoleSelectView.as_view()(request)
                self.assertEqual(response.status_code, 200)
                response.render()
                selector = htmls.S(response.content)

                self.assertEqual(
                    selector.count('.cradmin-legacy-roleselect-role-title'), 2)
                titletextlist = [
                    element.alltext_normalized for element in selector.list(
                        '.cradmin-legacy-roleselect-role-title')
                ]
                self.assertEqual(titletextlist, ['Role One', 'Role Two'])
    def test_render_no_pagination(self):
        class CustomRoleSelectView(RoleSelectView):
            paginate_by = 3

        roles = []
        for index in range(CustomRoleSelectView.paginate_by):
            role = mock.MagicMock()
            role.id = index
            role.title = 'Role {}'.format(index)
            roles.append(role)
        cradmin_instance = self.__mock_cradmin_instance(roles=roles)

        cradmin_instance_registry = mock.MagicMock()
        cradmin_instance_registry.get_current_instance.return_value = cradmin_instance
        with mock.patch(
                'cradmin_legacy.views.roleselect.cradmin_instance_registry',
                cradmin_instance_registry):
            with mock.patch(
                    'cradmin_legacy.templatetags.cradmin_legacy_tags.cradmin_instance_registry',
                    cradmin_instance_registry):
                request = self.factory.get('/roleselecttest')
                response = CustomRoleSelectView.as_view()(request)
                self.assertEqual(response.status_code, 200)
                response.render()
                selector = htmls.S(response.content)

                # selector.one('#cradmin_legacy_roleselect').prettyprint()
                self.assertEqual(
                    selector.count('.cradmin-legacy-roleselect-list li'), 3)
                self.assertFalse(selector.exists('.pager-container'))
    def test_render_pagetitle(self):
        class CustomRoleSelectView(RoleSelectView):
            pagetitle = u'Test title'

        role1 = mock.MagicMock()
        role1.id = 1
        role1.title = 'Role One'
        role2 = mock.MagicMock()
        role2.id = 2
        role2.title = 'Role Two'
        cradmin_instance = self.__mock_cradmin_instance(roles=[role1, role2])
        cradmin_instance_registry = mock.MagicMock()
        cradmin_instance_registry.get_current_instance.return_value = cradmin_instance
        with mock.patch(
                'cradmin_legacy.views.roleselect.cradmin_instance_registry',
                cradmin_instance_registry):
            with mock.patch(
                    'cradmin_legacy.templatetags.cradmin_legacy_tags.cradmin_instance_registry',
                    cradmin_instance_registry):
                request = self.factory.get('/roleselecttest')
                response = CustomRoleSelectView.as_view()(request)
                self.assertEqual(response.status_code, 200)
                response.render()
                selector = htmls.S(response.content)
                self.assertEqual(
                    selector.one('h1').alltext_normalized, 'Test title')
    def test_render_pagination(self):
        class CustomRoleSelectView(RoleSelectView):
            paginate_by = 3

        roles = []
        for index in range(CustomRoleSelectView.paginate_by + 2):
            role = mock.MagicMock()
            role.id = index
            role.title = 'Role {}'.format(index)
            roles.append(role)
        cradmin_instance = self.__mock_cradmin_instance(roles=roles)

        cradmin_instance_registry = mock.MagicMock()
        cradmin_instance_registry.get_current_instance.return_value = cradmin_instance
        with mock.patch(
                'cradmin_legacy.views.roleselect.cradmin_instance_registry',
                cradmin_instance_registry):
            with mock.patch(
                    'cradmin_legacy.templatetags.cradmin_legacy_tags.cradmin_instance_registry',
                    cradmin_instance_registry):
                request_page1 = self.factory.get('/roleselecttest')
                response_page1 = CustomRoleSelectView.as_view()(request_page1)
                self.assertEqual(response_page1.status_code, 200)
                response_page1.render()
                selector_page1 = htmls.S(response_page1.content)

                request_page2 = self.factory.get('/roleselecttest',
                                                 {'page': 2})
                response_page2 = CustomRoleSelectView.as_view()(request_page2)
                self.assertEqual(response_page2.status_code, 200)
                response_page2.render()
                selector_page2 = htmls.S(response_page2.content)

                self.assertEqual(
                    selector_page1.count('.cradmin-legacy-roleselect-list li'),
                    3)
                self.assertEqual(
                    selector_page2.count('.cradmin-legacy-roleselect-list li'),
                    2)

                self.assertTrue(selector_page1.exists('.pager-container'))
                self.assertTrue(
                    selector_page1.exists(
                        '.pager-container li.previous.disabled'))
                self.assertFalse(
                    selector_page1.exists('.pager-container li.next.disabled'))
                self.assertTrue(selector_page2.exists('.pager-container'))
                self.assertFalse(
                    selector_page2.exists(
                        '.pager-container li.previous.disabled'))
                self.assertTrue(
                    selector_page2.exists('.pager-container li.next.disabled'))
Example #5
0
 def test_this_month_match(self):
     testfilter = listfilter.django.single.select.DateTime(
         slug='mydatetimefield')
     testfilter.set_values(values=['this_month'])
     start_of_month = baker.make(
         'cradmin_viewhelpers_testapp.FilterTestModel',
         mydatetimefield=datetimeutils.default_timezone_datetime(
             2015, 12, 1))
     middle_of_month = baker.make(
         'cradmin_viewhelpers_testapp.FilterTestModel',
         mydatetimefield=datetimeutils.default_timezone_datetime(
             2015, 12, 24))
     end_of_month = baker.make(
         'cradmin_viewhelpers_testapp.FilterTestModel',
         mydatetimefield=datetimeutils.default_timezone_datetime(
             2015, 12, 31, 23))
     with mock.patch(
             'cradmin_legacy.viewhelpers.listfilter.basefilters.single.abstractselect.timezone.now',
             lambda: datetimeutils.default_timezone_datetime(
                 2015, 12, 7, 12, 30)):
         self.assertEqual(
             {start_of_month, middle_of_month, end_of_month},
             set(
                 testfilter.filter(
                     queryobject=FilterTestModel.objects.all())))
 def test_200_on_multiple(self):
     cradmin_instance = mock.MagicMock()
     cradmin_instance.get_rolequeryset.return_value.count = mock.MagicMock(
         return_value=2)
     cradmin_instance_registry = mock.MagicMock()
     cradmin_instance_registry.get_current_instance.return_value = cradmin_instance
     with mock.patch(
             'cradmin_legacy.views.roleselect.cradmin_instance_registry',
             cradmin_instance_registry):
         request = self.factory.get('/roleselecttest')
         response = RoleSelectView.as_view()(request)
         self.assertEqual(response.status_code, 200)
Example #7
0
 def test_yesterday_nomatch(self):
     testfilter = listfilter.django.single.select.DateTime(
         slug='mydatetimefield')
     testfilter.set_values(values=['yesterday'])
     baker.make('cradmin_viewhelpers_testapp.FilterTestModel',
                mydatetimefield=datetimeutils.default_timezone_datetime(
                    2015, 1, 10))
     with mock.patch(
             'cradmin_legacy.viewhelpers.listfilter.basefilters.single.abstractselect.timezone.now',
             lambda: datetimeutils.default_timezone_datetime(2015, 1, 12)):
         self.assertFalse(
             testfilter.filter(
                 queryobject=FilterTestModel.objects.all()).exists())
Example #8
0
 def test_last_seven_days_match(self):
     testfilter = listfilter.django.single.select.DateTime(
         slug='mydatetimefield')
     testfilter.set_values(values=['last_seven_days'])
     testitem = baker.make(
         'cradmin_viewhelpers_testapp.FilterTestModel',
         mydatetimefield=datetimeutils.default_timezone_datetime(
             2015, 1, 3))
     with mock.patch(
             'cradmin_legacy.viewhelpers.listfilter.basefilters.single.abstractselect.timezone.now',
             lambda: datetimeutils.default_timezone_datetime(
                 2015, 1, 10, 12, 30)):
         self.assertEqual(
             {testitem},
             set(
                 testfilter.filter(
                     queryobject=FilterTestModel.objects.all())))