當前位置: 首頁>>代碼示例>>Python>>正文


Python UserFactory.has_perm方法代碼示例

本文整理匯總了Python中accounts.factories.UserFactory.has_perm方法的典型用法代碼示例。如果您正苦於以下問題:Python UserFactory.has_perm方法的具體用法?Python UserFactory.has_perm怎麽用?Python UserFactory.has_perm使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在accounts.factories.UserFactory的用法示例。


在下文中一共展示了UserFactory.has_perm方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: NavigationTests

# 需要導入模塊: from accounts.factories import UserFactory [as 別名]
# 或者: from accounts.factories.UserFactory import has_perm [as 別名]
class NavigationTests(TestCase):
    """Navbar and navigation column shows different options depending on user's permissions."""

    def setUp(self):
        category = CategoryFactory()
        self.user = UserFactory(name='User', password='pass', category=category)
        self.url = reverse('category_document_list', args=[
            category.organisation.slug,
            category.slug
        ])
        self.dc_perms = Permission.objects.filter(codename__endswith='_document')
        self.create_url = reverse('document_create', args=[
            category.organisation.slug,
            category.slug
        ])

    def test_anonymous_navbar(self):
        res = self.client.get(self.url, follow=True)
        self.assertNotContains(res, 'href="/favorites/"')
        self.assertNotContains(res, '<a href="#nav-organisations"')
        self.assertNotContains(res, 'href="%s"' % self.create_url)
        self.assertNotContains(res, 'href="/admin/"')
        self.assertNotContains(res, '<a href="#nav-transmittals"')
        self.assertNotContains(res, '<a href="#nav-imports"')

    def test_authenticated_user_navbar(self):
        self.client.login(username=self.user.email, password='pass')
        self.assertTrue(self.user.is_authenticated())

        res = self.client.get(self.url, follow=True)
        self.assertContains(res, 'href="/favorites/"')
        self.assertContains(res, '<a href="#nav-organisations"')
        self.assertNotContains(res, 'href="%s"' % self.create_url)
        self.assertNotContains(res, 'href="/admin/"')
        self.assertNotContains(res, '<a href="#nav-transmittals"')
        self.assertNotContains(res, '<a href="#nav-imports"')

    def test_document_controller_navbar(self):
        self.user.user_permissions = self.dc_perms
        self.user.save()
        self.client.login(username=self.user.email, password='pass')

        self.assertTrue(self.user.is_authenticated())
        self.assertTrue(self.user.has_perm('documents.add_document'))

        res = self.client.get(self.url, follow=True)
        self.assertContains(res, 'href="/favorites/"')
        self.assertContains(res, '<a href="#nav-organisations"')
        self.assertContains(res, 'href="%s"' % self.create_url)
        self.assertNotContains(res, 'href="/admin/"')
        self.assertContains(res, '<a href="#nav-transmittals"')
        self.assertContains(res, '<a href="#nav-imports"')

    def test_admin_navbar(self):
        self.user.is_superuser = True
        self.user.save()
        self.client.login(username=self.user.email, password='pass')
        self.assertTrue(self.user.is_authenticated())

        res = self.client.get(self.url, follow=True)
        self.assertContains(res, 'href="/favorites/"')
        self.assertContains(res, '<a href="#nav-organisations"')
        self.assertContains(res, 'href="%s"' % self.create_url)
        self.assertContains(res, 'href="/admin/"')
        self.assertContains(res, '<a href="#nav-transmittals"')
        self.assertContains(res, '<a href="#nav-imports"')
開發者ID:Talengi,項目名稱:phase,代碼行數:68,代碼來源:test_views.py


注:本文中的accounts.factories.UserFactory.has_perm方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。