From 0d1e09fbcdb1a1db93d9561c9323c7ef105e71ca Mon Sep 17 00:00:00 2001 From: Andrew Godwin Date: Mon, 21 Nov 2022 20:10:01 -0700 Subject: Refactor almost all tests into /tests/ --- tests/users/views/test_activitypub.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tests/users/views/test_activitypub.py (limited to 'tests/users/views/test_activitypub.py') diff --git a/tests/users/views/test_activitypub.py b/tests/users/views/test_activitypub.py new file mode 100644 index 0000000..72ab8c3 --- /dev/null +++ b/tests/users/views/test_activitypub.py @@ -0,0 +1,31 @@ +import pytest + +from users.models import Domain, Identity, User + + +@pytest.mark.django_db +def test_webfinger_actor(client): + """ + Ensures the webfinger and actor URLs are working properly + """ + # Make a user + user = User.objects.create(email="test@example.com") + # Make a domain + domain = Domain.objects.create(domain="example.com", local=True) + domain.users.add(user) + # Make an identity for them + identity = Identity.objects.create( + actor_uri="https://example.com/@test@example.com/", + username="test", + domain=domain, + name="Test User", + local=True, + ) + identity.generate_keypair() + # Fetch their webfinger + data = client.get("/.well-known/webfinger?resource=acct:test@example.com").json() + assert data["subject"] == "acct:test@example.com" + assert data["aliases"][0] == "https://example.com/@test/" + # Fetch their actor + data = client.get("/@test@example.com/", HTTP_ACCEPT="application/ld+json").json() + assert data["id"] == "https://example.com/@test@example.com/" -- cgit v1.2.3