本文整理汇总了Python中django.contrib.auth.models.Group.set_perms方法的典型用法代码示例。如果您正苦于以下问题:Python Group.set_perms方法的具体用法?Python Group.set_perms怎么用?Python Group.set_perms使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类django.contrib.auth.models.Group
的用法示例。
在下文中一共展示了Group.set_perms方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestNewVirtualMachineFormInit
# 需要导入模块: from django.contrib.auth.models import Group [as 别名]
# 或者: from django.contrib.auth.models.Group import set_perms [as 别名]
#.........这里部分代码省略.........
# user - superuser
self.user.is_superuser = True
self.user.save()
form = NewVirtualMachineForm(self.user, initial={'owner':self.user.get_profile().id})
self.assertEqual(set([(u'', u'---------'), (self.cluster0.pk, u'test0'), (self.cluster1.pk, u'test1'), (self.cluster2.pk, u'test2'), (self.cluster3.pk, u'test3')]), set(form.fields['cluster'].choices))
# group - superuser
form = NewVirtualMachineForm(self.user, initial={'owner':self.group.organization.id})
self.assertEqual(set([(u'', u'---------'), (self.cluster0.pk, u'test0'), (self.cluster1.pk, u'test1'), (self.cluster2.pk, u'test2'), (self.cluster3.pk, u'test3')]), set(form.fields['cluster'].choices))
def test_owner_choices_init(self):
"""
Tests that owner choices are set based on User permissions
Verifies:
* superusers have all clusterusers as choices
* user receives themselves as a choice if they have perms
* user receives all groups they are a member of
"""
# user with no choices
form = NewVirtualMachineForm(self.user)
self.assertEqual([(u'', u'---------')], form.fields['owner'].choices)
# user with perms on self, no groups
self.user.grant('admin', self.cluster0)
form = NewVirtualMachineForm(self.user)
self.assertEqual(
[
(u'', u'---------'),
(self.user.profile.id, u'tester0'),
], form.fields['owner'].choices)
self.user.set_perms(['create_vm'], self.cluster0)
form = NewVirtualMachineForm(self.user)
self.assertEqual(
[
(u'', u'---------'),
(self.user.profile.id, u'tester0'),
], form.fields['owner'].choices)
# user with perms on self and groups
self.group.user_set.add(self.user)
self.group.grant('admin', self.cluster0)
form = NewVirtualMachineForm(self.user)
self.assertEqual(
[
(u'', u'---------'),
(self.group.organization.id, u'testing_group'),
(self.user.profile.id, u'tester0'),
], form.fields['owner'].choices)
self.user.revoke_all(self.cluster0)
# user with no perms on self, but groups
form = NewVirtualMachineForm(self.user)
self.assertEqual(
[
(u'', u'---------'),
(self.group.organization.id, u'testing_group'),
], form.fields['owner'].choices)
self.group.set_perms(['create_vm'], self.cluster0)
form = NewVirtualMachineForm(self.user)
self.assertEqual(
[
(u'', u'---------'),
(self.group.organization.id, u'testing_group'),