示例#1
0
    def test_return_choices_from_user_permissions(self):
        covid_perms = Permission.objects.filter(codename__startswith=settings.COVID_IMPORT_PERMISSION_PREFIX)
        assert covid_perms.count() == 27  # this test requires migrations
        perm_1, perm_2 = covid_perms.filter(Q(codename__endswith="SP") | Q(codename__endswith="RJ"))
        self.user.groups.add(perm_1.group_set.exclude(name__icontains="Admins").get())
        self.user.groups.add(perm_2.group_set.exclude(name__icontains="Admins").get())

        choices = state_choices_for_user(self.user)

        assert 2 == len(choices)
        assert ("RJ", "Rio de Janeiro") in choices
        assert ("SP", "São Paulo") in choices
示例#2
0
    def test_return_choices_from_user_permissions(self):
        covid_perms = Permission.objects.filter(
            codename__startswith=settings.COVID_IMPORT_PERMISSION_PREFIX)
        assert covid_perms.count() == 27  # this test requires migrations
        perm_1, perm_2 = covid_perms.filter(
            Q(codename__endswith='SP') | Q(codename__endswith='RJ'))
        self.user.groups.add(perm_1.group_set.get())
        self.user.groups.add(perm_2.group_set.get())

        choices = state_choices_for_user(self.user)

        assert 2 == len(choices)
        assert ('RJ', 'Rio de Janeiro') in choices
        assert ('SP', 'São Paulo') in choices
示例#3
0
    def test_user_without_permissions_has_no_choices(self):
        choices = state_choices_for_user(self.user)

        assert [] == choices
示例#4
0
    def test_super_user_can_acccess_all_states(self):
        self.user.is_superuser = True

        choices = state_choices_for_user(self.user)

        assert list(STATE_CHOICES) == choices
示例#5
0
文件: admin.py 项目: rcbull/brasil.io
 def lookups(self, request, model_admin):
     return [("", "Todos")] + state_choices_for_user(request.user)
示例#6
0
文件: admin.py 项目: rcbull/brasil.io
 def formfield_for_choice_field(self, db_field, request, **kwargs):
     if db_field.name == "state":
         kwargs["choices"] = state_choices_for_user(request.user)
     return super().formfield_for_choice_field(db_field, request, **kwargs)