46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
# -*- coding: utf-8 -*-
|
|
from allauth.socialaccount.tests import OAuthTestsMixin
|
|
from allauth.tests import MockedResponse, TestCase
|
|
|
|
from .provider import BitbucketProvider
|
|
|
|
|
|
class BitbucketTests(OAuthTestsMixin, TestCase):
|
|
provider_id = BitbucketProvider.id
|
|
|
|
def get_mocked_response(self):
|
|
# FIXME: Replace with actual/complete Bitbucket response
|
|
return [
|
|
MockedResponse(
|
|
200,
|
|
r"""
|
|
[{"active": true, "email": "raymond.penners@example.com", "primary": true},
|
|
{"active": true, "email": "raymond.penners@example.org", "primary": false}
|
|
]
|
|
""",
|
|
),
|
|
MockedResponse(
|
|
200,
|
|
r"""
|
|
{"repositories": [],
|
|
"user": {"avatar": "https://secure.gravatar.com/avatar.jpg",
|
|
"display_name": "pennersr",
|
|
"first_name": "",
|
|
"is_team": false,
|
|
"last_name": "",
|
|
"resource_uri": "/1.0/users/pennersr",
|
|
"username": "pennersr"}}
|
|
""",
|
|
),
|
|
] # noqa
|
|
|
|
def test_login(self):
|
|
account = super(BitbucketTests, self).test_login()
|
|
bb_account = account.get_provider_account()
|
|
self.assertEqual(bb_account.get_username(), "pennersr")
|
|
self.assertEqual(
|
|
bb_account.get_avatar_url(),
|
|
"https://secure.gravatar.com/avatar.jpg",
|
|
)
|
|
self.assertEqual(bb_account.get_profile_url(), "http://bitbucket.org/pennersr")
|