Fixes missing backend attr issue

This commit is contained in:
mariodev 2016-07-04 22:16:24 +02:00
parent f139a4f06a
commit 6e940e08aa
2 changed files with 15 additions and 3 deletions

View File

@ -105,8 +105,7 @@ class TestSocialAuth(TestCase, BaseAPITestCase):
self.assertIn('key', self.response.json.keys())
self.assertEqual(get_user_model().objects.all().count(), users_count + 1)
@responses.activate
def test_twitter_social_auth(self):
def _twitter_social_auth(self):
# fake response for twitter call
resp_body = {
"id": "123123123123",
@ -136,6 +135,16 @@ class TestSocialAuth(TestCase, BaseAPITestCase):
self.assertIn('key', self.response.json.keys())
self.assertEqual(get_user_model().objects.all().count(), users_count + 1)
@responses.activate
@override_settings(SOCIALACCOUNT_AUTO_SIGNUP=True)
def test_twitter_social_auth(self):
self._twitter_social_auth()
@responses.activate
@override_settings(SOCIALACCOUNT_AUTO_SIGNUP=False)
def test_twitter_social_auth_without_auto_singup(self):
self._twitter_social_auth()
@responses.activate
@override_settings(
ACCOUNT_EMAIL_VERIFICATION='mandatory',

View File

@ -11,6 +11,7 @@ from rest_framework.permissions import IsAuthenticated, AllowAny
from rest_framework.generics import RetrieveUpdateAPIView
from allauth.account import app_settings as allauth_settings
from allauth.account.adapter import get_adapter
from .app_settings import (
TokenSerializer, UserDetailsSerializer, LoginSerializer,
@ -53,7 +54,7 @@ class LoginView(GenericAPIView):
self.token = create_token(self.token_model, self.user, self.serializer)
if getattr(settings, 'REST_SESSION_LOGIN', True):
login(self.request, self.user)
get_adapter(self.request).login(self.request, self.user)
def get_response(self):
serializer_class = self.get_response_serializer()
@ -70,8 +71,10 @@ class LoginView(GenericAPIView):
return Response(serializer.data, status=status.HTTP_200_OK)
def post(self, request, *args, **kwargs):
self.request = request
self.serializer = self.get_serializer(data=self.request.data)
self.serializer.is_valid(raise_exception=True)
self.login()
return self.get_response()