some more work on test, prior to use
This commit is contained in:
@@ -735,19 +735,49 @@ class SocialLoginTest(APITestCase):
|
|||||||
self.user = self.factory(email=self.email, is_active=True)
|
self.user = self.factory(email=self.email, is_active=True)
|
||||||
self.user.set_password(self.password)
|
self.user.set_password(self.password)
|
||||||
self.user.save()
|
self.user.save()
|
||||||
|
# data
|
||||||
|
self.callback_uri = 'http://127.0.0.1:8000/'
|
||||||
|
|
||||||
def test_user_can_login_facebook(self):
|
def test_user_can_login_facebook(self):
|
||||||
|
# get auth page
|
||||||
url = f'https://facebook.com/auth? \
|
url = f'https://facebook.com/auth? \
|
||||||
response_type=code& \
|
response_type=code& \
|
||||||
client_id={settings.FACEBOOK_ID}& \
|
client_id={settings.FACEBOOK_ID}& \
|
||||||
redirect_uri=CALLBACK_URI& \
|
redirect_uri={self.callback_uri}& \
|
||||||
scope=profile& \
|
scope=profile& \
|
||||||
scope=email'
|
scope=email'
|
||||||
|
|
||||||
response = self.client.get(url)
|
response = self.client.get(url)
|
||||||
|
# make assertions
|
||||||
|
self.assertEquals(response.status_code, 200)
|
||||||
|
|
||||||
|
# authenticate to auth page if not logged in
|
||||||
|
url2 = response.url
|
||||||
|
creds = {
|
||||||
|
'email': 'sam@mail.com',
|
||||||
|
'password': 'supersecret'
|
||||||
|
}
|
||||||
|
response = self.client.post(url2, data=creds)
|
||||||
# assertions
|
# assertions
|
||||||
self.assertEquals(response.status_code, 200)
|
self.assertEquals(response.status_code, 200)
|
||||||
|
# redirection url
|
||||||
|
redirect = response.url
|
||||||
|
auth_code = redirect.split('=')[-1]
|
||||||
|
|
||||||
|
# authenticate previous query is valid
|
||||||
|
url = f'https://facebook.com/token/?
|
||||||
|
grant_type=authorization_code&\
|
||||||
|
code={auth_code}&\
|
||||||
|
redirect_uri={self.callback_uri}&\
|
||||||
|
client_id={settings.FACEBOOK_ID}&\
|
||||||
|
client_secret=CLIENT_SECRET'
|
||||||
|
|
||||||
|
response = self.client.get(url)
|
||||||
|
# assertions
|
||||||
|
self.assertEquals(response.status_code, 200)
|
||||||
|
# redirection url
|
||||||
|
redirect = response.url
|
||||||
|
auth_code = redirect.split('=')[-1]
|
||||||
|
|
||||||
def test_user_can_login_google(self):
|
def test_user_can_login_google(self):
|
||||||
url = f'https://google.com/auth? \
|
url = f'https://google.com/auth? \
|
||||||
|
|||||||
Reference in New Issue
Block a user