Skip to content

Commit

Permalink
Web: ignore superfeedr subscribe failures
Browse files Browse the repository at this point in the history
it's pretty unreliable right now πŸ˜•

for #550
  • Loading branch information
snarfed committed Dec 5, 2023
1 parent 0e5866d commit 8f3b4c1
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 3 deletions.
16 changes: 14 additions & 2 deletions tests/test_web.py
Original file line number Diff line number Diff line change
Expand Up @@ -536,6 +536,19 @@ def test_get_or_create_subscribes_superfeedr(self, mock_get, mock_post):
}, auth=ANY)
self.assertEqual(NOW, self.user.key.get().superfeedr_subscribed)

def test_get_or_create_subscribe_error(self, mock_get, mock_post):
self.user.obj.mf2 = ACTOR_MF2_REL_FEED_URL
self.user.obj.put()
self.user.has_redirects = False
self.user.put()

mock_post.return_value = requests_response('Nope', status=500)

user = Web.get_or_create('user.com')
self.assert_entities_equal(user, self.user, ignore=['updated'])
self.assertIsNone(user.superfeedr_subscribed)
self.assertIsNone(user.superfeedr_subscribed_feed)

def test_get_or_create_existing_subscribed(self, *_):
self.user.superfeedr_subscribed = NOW
self.user.put()
Expand Down Expand Up @@ -748,8 +761,7 @@ def test_target_fetch_has_no_content_type(self, mock_get, mock_post):
no_content_type, # https://user.com/ webmention discovery
no_content_type, # http://not/fediverse webmention discovery
)
got = self.post('/queue/webmention',
data={'source': 'https://user.com/reply'})
got = self.post('/queue/webmention', data={'source': 'https://user.com/reply'})
self.assertEqual(204, got.status_code)
mock_post.assert_not_called()

Expand Down
6 changes: 5 additions & 1 deletion web.py
Original file line number Diff line number Diff line change
Expand Up @@ -641,7 +641,11 @@ def maybe_superfeedr_subscribe(user):
'format': 'atom',
'retrieve': 'true',
})
resp.raise_for_status()
try:
resp.raise_for_status()
except BaseException as e:
util.interpret_http_exception(e)
return

user.superfeedr_subscribed = util.now()
user.superfeedr_subscribed_feed = url
Expand Down

0 comments on commit 8f3b4c1

Please sign in to comment.