kopia lustrzana https://github.com/snarfed/bridgy-fed
misc noop tweaks, mostly tests
rodzic
f6e5727602
commit
5169c2e44e
|
@ -474,12 +474,14 @@ def actor(domain):
|
|||
return f'User {domain} not fully set up', 404
|
||||
|
||||
# TODO: unify with common.actor()
|
||||
actor = {
|
||||
**postprocess_as2(user.actor_as2, user=user),
|
||||
actor = postprocess_as2(user.actor_as2, user=user)
|
||||
actor.update({
|
||||
'id': user.actor_id(),
|
||||
# This has to be the domain for Mastodon etc interop! It seems like it
|
||||
# should be the custom username from the acct: u-url in their h-card,
|
||||
# but that breaks Mastodon's Webfinger discovery. Background:
|
||||
# https://docs.joinmastodon.org/spec/activitypub/#properties-used-1
|
||||
# https://docs.joinmastodon.org/spec/webfinger/#mastodons-requirements-for-webfinger
|
||||
# https://github.com/snarfed/bridgy-fed/issues/302#issuecomment-1324305460
|
||||
# https://github.com/snarfed/bridgy-fed/issues/77
|
||||
'preferredUsername': domain,
|
||||
|
@ -490,7 +492,7 @@ def actor(domain):
|
|||
'endpoints': {
|
||||
'sharedInbox': host_url('inbox'),
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
logger.info(f'Returning: {json_dumps(actor, indent=2)}')
|
||||
return actor, {
|
||||
|
|
|
@ -89,7 +89,7 @@ class WebfingerTest(testutil.TestCase):
|
|||
got = self.client.get('/acct:foo.com', headers={'Accept': 'application/json'})
|
||||
self.assertEqual(200, got.status_code)
|
||||
self.assertEqual('application/jrd+json', got.headers['Content-Type'])
|
||||
self.assertEqual(self.expected_webfinger, got.json)
|
||||
self.assert_equals(self.expected_webfinger, got.json)
|
||||
|
||||
def test_user_no_hcard(self):
|
||||
self.user.has_hcard = False
|
||||
|
@ -147,7 +147,7 @@ class WebfingerTest(testutil.TestCase):
|
|||
got = self.client.get(url, headers={'Accept': 'application/json'})
|
||||
self.assertEqual(200, got.status_code, got.get_data(as_text=True))
|
||||
self.assertEqual('application/jrd+json', got.headers['Content-Type'])
|
||||
self.assertEqual(self.expected_webfinger, got.json)
|
||||
self.assert_equals(self.expected_webfinger, got.json)
|
||||
|
||||
def test_webfinger_custom_username(self):
|
||||
self.user.actor_as2 = {
|
||||
|
@ -188,7 +188,7 @@ class WebfingerTest(testutil.TestCase):
|
|||
got = self.client.get(url, headers={'Accept': 'application/json'})
|
||||
self.assertEqual(200, got.status_code, got.get_data(as_text=True))
|
||||
self.assertEqual('application/jrd+json', got.headers['Content-Type'])
|
||||
self.assertEqual(self.expected_webfinger, got.json)
|
||||
self.assert_equals(self.expected_webfinger, got.json)
|
||||
|
||||
def test_webfinger_fed_brid_gy(self):
|
||||
got = self.client.get('/.well-known/webfinger?resource=http://localhost/')
|
||||
|
|
|
@ -353,10 +353,9 @@ class WebmentionTest(testutil.TestCase):
|
|||
calls = {call[0][0]: call for call in mock_post.call_args_list}
|
||||
|
||||
for inbox in inboxes:
|
||||
with self.subTest(inbox=inbox):
|
||||
got = json_loads(calls[inbox][1]['data'])
|
||||
got.get('object', {}).pop('publicKey', None)
|
||||
self.assertEqual(data, got)
|
||||
got = json_loads(calls[inbox][1]['data'])
|
||||
got.get('object', {}).pop('publicKey', None)
|
||||
self.assert_equals(data, got, inbox)
|
||||
|
||||
def test_bad_source_url(self, mock_get, mock_post):
|
||||
got = self.client.post('/webmention', data=b'')
|
||||
|
@ -903,7 +902,7 @@ class WebmentionTest(testutil.TestCase):
|
|||
'image': {'url': 'http://im/age', 'type': 'Image'},
|
||||
'attachment': [{'url': 'http://im/age', 'type': 'Image'}],
|
||||
})
|
||||
self.assertEqual(create, json_loads(mock_post.call_args[1]['data']))
|
||||
self.assert_equals(create, json_loads(mock_post.call_args[1]['data']))
|
||||
|
||||
def test_follow(self, mock_get, mock_post):
|
||||
mock_get.side_effect = [self.follow, self.actor]
|
||||
|
@ -969,7 +968,7 @@ class WebmentionTest(testutil.TestCase):
|
|||
self.assertEqual(('https://mas.to/inbox',), args)
|
||||
expected = self.follow_as2
|
||||
expected['actor'] = 'http://localhost/user.com'
|
||||
self.assertEqual(expected, json_loads(kwargs['data']))
|
||||
self.assert_equals(expected, json_loads(kwargs['data']))
|
||||
|
||||
def test_follow_fragment(self, mock_get, mock_post):
|
||||
mock_get.side_effect = [self.follow_fragment, self.actor]
|
||||
|
|
|
@ -123,7 +123,7 @@ class XrpcFeedTest(testutil.TestCase):
|
|||
resp = self.client.get('/xrpc/app.bsky.feed.getAuthorFeed',
|
||||
query_string={'author': 'foo.com'})
|
||||
self.assertEqual(200, resp.status_code)
|
||||
self.assertEqual({'feed': []}, resp.json)
|
||||
self.assert_equals({'feed': []}, resp.json)
|
||||
|
||||
def test_getPostThread(self):
|
||||
with app.test_request_context('/'):
|
||||
|
|
|
@ -29,8 +29,6 @@ from models import Follower, Object, Target, User
|
|||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
SKIP_EMAIL_DOMAINS = frozenset(('localhost', 'snarfed.org'))
|
||||
|
||||
# https://cloud.google.com/appengine/docs/locations
|
||||
TASKS_LOCATION = 'us-central1'
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue