Use asyncio for broadcasting
This commit is contained in:
parent
cbd14a69ea
commit
ddcaf8e3b8
3 changed files with 58 additions and 27 deletions
|
@ -12,6 +12,7 @@ from bookwyrm.models import base_model
|
|||
from bookwyrm.models.activitypub_mixin import (
|
||||
ActivitypubMixin,
|
||||
ActivityMixin,
|
||||
broadcast_task,
|
||||
ObjectMixin,
|
||||
OrderedCollectionMixin,
|
||||
to_ordered_collection_page,
|
||||
|
@ -19,7 +20,7 @@ from bookwyrm.models.activitypub_mixin import (
|
|||
from bookwyrm.settings import PAGE_LENGTH
|
||||
|
||||
|
||||
# pylint: disable=invalid-name
|
||||
# pylint: disable=invalid-name,too-many-public-methods
|
||||
@patch("bookwyrm.activitystreams.add_status_task.delay")
|
||||
@patch("bookwyrm.models.activitypub_mixin.broadcast_task.apply_async")
|
||||
class ActivitypubMixins(TestCase):
|
||||
|
@ -421,3 +422,14 @@ class ActivitypubMixins(TestCase):
|
|||
self.assertEqual(page_2.id, "http://fish.com/?page=2")
|
||||
self.assertEqual(page_2.orderedItems[0]["content"], "test status 14")
|
||||
self.assertEqual(page_2.orderedItems[-1]["content"], "test status 0")
|
||||
|
||||
def test_broadcast_task(self, *_):
|
||||
"""Should be calling asyncio"""
|
||||
recipients = [
|
||||
"https://instance.example/user/inbox",
|
||||
"https://instance.example/okay/inbox",
|
||||
]
|
||||
with patch("bookwyrm.models.activitypub_mixin.asyncio.run") as mock:
|
||||
broadcast_task(self.local_user.id, {}, recipients)
|
||||
self.assertTrue(mock.called)
|
||||
self.assertEqual(mock.call_count, 1)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue