python-webfinger/tests.py

71 wiersze
2.0 KiB
Python

import unittest
from webfinger import finger, WebFingerClient, WebFingerResponse
class TestHostParsing(unittest.TestCase):
def setUp(self):
self.client = WebFingerClient()
def test_parsing(self):
host = self.client._parse_host('eric@konklone.com')
self.assertEqual(host, 'konklone.com')
def test_official_parsing(self):
self.client.official = True
host = self.client._parse_host('konklone@twitter.com')
self.assertEqual(host, 'twitter.com')
def test_unofficial_parsing(self):
self.client.official = False
host = self.client._parse_host('konklone@twitter.com')
self.assertEqual(host, 'twitter-webfinger.appspot.com')
class TestWebFingerRequest(unittest.TestCase):
def setUp(self):
self.client = WebFingerClient()
def test_subject(self):
wf = self.client.finger('acct:eric@konklone.com')
self.assertEqual(wf.subject, 'acct:eric@konklone.com')
class TestWebFingerResponse(unittest.TestCase):
def setUp(self):
jrd = {
"subject": "acct:eric@konklone.com",
"properties": {
"http://schema.org/name": "Eric Mill"
},
"links": [
{
"rel": "http://webfinger.net/rel/profile-page",
"href": "https://konklone.com"
},
{
"rel": "http://webfinger.net/rel/avatar",
"href": "https://secure.gravatar.com/avatar/ac3399caecce27cb19d381f61124539e.jpg?s=400"
}
]
}
self.response = WebFingerResponse(jrd)
def test_subject(self):
self.assertEqual(self.response.subject, 'acct:eric@konklone.com')
def test_rel(self):
self.assertEqual(self.response.rel('http://webfinger.net/rel/profile-page'), 'https://konklone.com')
def test_invalid_rel(self):
self.assertEqual(self.response.rel(''), None)
if __name__ == '__main__':
unittest.main()