funkwhale/api/tests/federation/test_actors.py

43 wiersze
1.4 KiB
Python
Czysty Zwykły widok Historia

from django.urls import reverse
from funkwhale_api.federation import actors
def test_actor_fetching(r_mock):
payload = {
'id': 'https://actor.mock/users/actor#main-key',
'owner': 'test',
'publicKeyPem': 'test_pem',
}
actor_url = 'https://actor.mock/'
r_mock.get(actor_url, json=payload)
r = actors.get_actor_data(actor_url)
assert r == payload
def test_get_library(settings, preferences):
preferences['federation__public_key'] = 'public_key'
expected = {
'preferred_username': 'library',
'domain': settings.FEDERATION_HOSTNAME,
'type': 'Person',
'name': '{}\'s library'.format(settings.FEDERATION_HOSTNAME),
'manually_approves_followers': True,
'url': reverse(
'federation:instance-actors-detail',
kwargs={'actor': 'library'}),
'shared_inbox_url': reverse(
'federation:instance-actors-inbox',
kwargs={'actor': 'library'}),
'inbox_url': reverse(
'federation:instance-actors-inbox',
kwargs={'actor': 'library'}),
'public_key': 'public_key',
'summary': 'Bot account to federate with {}\'s library'.format(
settings.FEDERATION_HOSTNAME),
}
actor = actors.SYSTEM_ACTORS['library']['get_actor']()
for key, value in expected.items():
assert getattr(actor, key) == value