假设我想编写测试以确保不存在权限。我希望以下测试通过(而不是它给出错误):
from django.test import TestCase
from django.contrib.auth.models import Permission
class TestPermission(TestCase):
def test_existence_of_permission(self):
self.assertIsNone(Permission.objects.get(codename='a_non_existant_permission'))
这给了我以下错误:
django.contrib.auth.models.DoesNotExist: Permission matching query does not exist.
如何测试此权限是否不存在?
答案 0 :(得分:1)
我想出来了:
我应该将treatead Permission
作为常规Django模型。
from django.test import TestCase
from django.contrib.auth.models import Permission
class TestPermission(TestCase):
def test_existence_of_permission(self):
self.assertFalse(Permission.objects.filter(
codename='a_non_existant_permission').exists())