def setUp(self): self.filterperm = FilterPermission() self.request = HttpRequest() self.me = User.objects.create(username="******", password='******') self.userok = User.objects.create(username="******", password='******') self.not_admin = User.objects.create(username="******", password='******') self.wrong = User.objects.create(username="******", password='******') self.admin = User.objects.create_superuser(username="******", password="******", email="") self.user_ct = ContentType.objects.get_by_natural_key("auth", "user") self.q = Q(Q(username='******') | Q(username='******')) self.qserializer = QSerializer(base64=True) self.myfilter = self.qserializer.dumps(self.q) self.fpm = FilterPermissionModel.objects.create(user=self.me, content_type=self.user_ct, filter=self.myfilter) self.request.user = self.me
class TestFilterPermission(TestCase): """ test filter permission """ def setUp(self): self.filterperm = FilterPermission() self.request = HttpRequest() self.me = User.objects.create(username="******", password='******') self.userok = User.objects.create(username="******", password='******') self.not_admin = User.objects.create(username="******", password='******') self.wrong = User.objects.create(username="******", password='******') self.admin = User.objects.create_superuser(username="******", password="******", email="") self.user_ct = ContentType.objects.get_by_natural_key("auth", "user") self.q = Q(Q(username='******') | Q(username='******')) self.qserializer = QSerializer(base64=True) self.myfilter = self.qserializer.dumps(self.q) self.fpm = FilterPermissionModel.objects.create(user=self.me, content_type=self.user_ct, filter=self.myfilter) self.request.user = self.me def test_superuser(self): self.request.user = self.admin res = self.filterperm.has_object_permission(self.request, None, None) self.assertTrue(res) def test_no_filter(self): self.request.user = self.not_admin res = self.filterperm.has_object_permission(self.request, None, self.userok) self.assertTrue(res) res = self.filterperm.has_object_permission(self.request, None, self.wrong) self.assertTrue(res) def test_obj_valid(self): res = self.filterperm.has_object_permission(self.request, None, self.userok) self.assertTrue(res) def test_obj_not_valid(self): res = self.filterperm.has_object_permission(self.request, None, self.wrong) self.assertFalse(res)