46 lines
1.5 KiB
Python
46 lines
1.5 KiB
Python
# -*- coding: utf-8 -*-
|
|
from allauth.socialaccount.tests import OAuthTestsMixin
|
|
from allauth.tests import MockedResponse, TestCase
|
|
|
|
from .provider import OpenStreetMapProvider
|
|
|
|
|
|
class OpenStreetMapTests(OAuthTestsMixin, TestCase):
|
|
provider_id = OpenStreetMapProvider.id
|
|
|
|
def get_mocked_response(self):
|
|
return [
|
|
MockedResponse(
|
|
200,
|
|
r"""<?xml version="1.0" encoding="UTF-8"?>
|
|
<osm version="0.6" generator="OpenStreetMap server" copyright="OpenStreetMap and contributors" attribution="http://www.openstreetmap.org/copyright" license="http://opendatacommons.org/licenses/odbl/1-0/">
|
|
<user id="1" display_name="Steve" account_created="2005-09-13T15:32:57Z">
|
|
<description></description>
|
|
<contributor-terms agreed="true"/>
|
|
<img href="https://secure.gravatar.com/avatar.jpg"/>
|
|
<roles>
|
|
</roles>
|
|
<changesets count="899"/>
|
|
<traces count="21"/>
|
|
<blocks>
|
|
<received count="0" active="0"/>
|
|
</blocks>
|
|
</user>
|
|
</osm>
|
|
""",
|
|
)
|
|
] # noqa
|
|
|
|
def test_login(self):
|
|
account = super(OpenStreetMapTests, self).test_login()
|
|
osm_account = account.get_provider_account()
|
|
self.assertEqual(osm_account.get_username(), "Steve")
|
|
self.assertEqual(
|
|
osm_account.get_avatar_url(),
|
|
"https://secure.gravatar.com/avatar.jpg",
|
|
)
|
|
self.assertEqual(
|
|
osm_account.get_profile_url(),
|
|
"https://www.openstreetmap.org/user/Steve",
|
|
)
|