Commit 60457a5e by James Tait

Just use the object manager to get the permission.

parent 840648c1
...@@ -316,7 +316,7 @@ class OpenIDBackend: ...@@ -316,7 +316,7 @@ class OpenIDBackend:
updated = True updated = True
account_verified = details.get('account_verified', None) account_verified = details.get('account_verified', None)
if (account_verified is not None): if (account_verified is not None):
permission = UserOpenID.permission() permission = Permission.objects.get(codename='account_verified')
perm_label = '%s.%s' % (permission.content_type.app_label, perm_label = '%s.%s' % (permission.content_type.app_label,
permission.codename) permission.codename)
if account_verified and not user.has_perm(perm_label): if account_verified and not user.has_perm(perm_label):
......
...@@ -65,11 +65,7 @@ class UserOpenID(models.Model): ...@@ -65,11 +65,7 @@ class UserOpenID(models.Model):
('account_verified', 'The OpenID has been verified'), ('account_verified', 'The OpenID has been verified'),
) )
@classmethod
def permission(self):
return Permission.objects.get(codename='account_verified')
def delete(self, using=None): def delete(self, using=None):
permission = UserOpenID.permission() permission = Permission.objects.get(codename='account_verified')
self.user.user_permissions.remove(permission) self.user.user_permissions.remove(permission)
super(UserOpenID, self).delete(using) super(UserOpenID, self).delete(using)
...@@ -29,7 +29,11 @@ ...@@ -29,7 +29,11 @@
import unittest import unittest
from django.conf import settings from django.conf import settings
from django.contrib.auth.models import Group, User from django.contrib.auth.models import (
Group,
Permission,
User,
)
from django.test import TestCase from django.test import TestCase
from django_openid_auth.auth import OpenIDBackend from django_openid_auth.auth import OpenIDBackend
...@@ -207,7 +211,7 @@ class OpenIDBackendTests(TestCase): ...@@ -207,7 +211,7 @@ class OpenIDBackendTests(TestCase):
def _test_account_verified(self, user, initially_verified, expected): def _test_account_verified(self, user, initially_verified, expected):
# set user's verification status # set user's verification status
permission = UserOpenID.permission() permission = Permission.objects.get(codename='account_verified')
if initially_verified: if initially_verified:
user.user_permissions.add(permission) user.user_permissions.add(permission)
else: else:
......
...@@ -31,7 +31,10 @@ import unittest ...@@ -31,7 +31,10 @@ import unittest
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.test import TestCase from django.test import TestCase
from django_openid_auth.models import UserOpenID from django_openid_auth.models import (
Permission,
UserOpenID,
)
class UserOpenIDModelTestCase(TestCase): class UserOpenIDModelTestCase(TestCase):
...@@ -60,7 +63,7 @@ class UserOpenIDModelTestCase(TestCase): ...@@ -60,7 +63,7 @@ class UserOpenIDModelTestCase(TestCase):
user=user, user=user,
claimed_id='http://example.com/existing_identity', claimed_id='http://example.com/existing_identity',
display_id='http://example.com/existing_identity') display_id='http://example.com/existing_identity')
permission = UserOpenID.permission() permission = Permission.objects.get(codename='account_verified')
user.user_permissions.add(permission) user.user_permissions.add(permission)
self.assertTrue( self.assertTrue(
User.objects.get(username='someuser').has_perm( User.objects.get(username='someuser').has_perm(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment