28 lines
776 B
Python
28 lines
776 B
Python
import pytest
|
|
from .fixtures import ACCT_NAME
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
["query", "status"],
|
|
[
|
|
["", 404],
|
|
["?foo=bar", 404],
|
|
["?resource=lol@bar.com", 404],
|
|
[f"?resource={ACCT_NAME}", 200],
|
|
],
|
|
)
|
|
def test_webfinger_status(client, query, status):
|
|
resp = client.get("/.well-known/webfinger" + query)
|
|
assert resp.status_code == status
|
|
|
|
|
|
def test_webfinger(client):
|
|
resp = client.get(f"/.well-known/webfinger?resource={ACCT_NAME}")
|
|
assert resp.status_code == 200
|
|
data = resp.json()
|
|
assert data["subject"] == ACCT_NAME
|
|
assert len(data["links"]) > 0
|
|
self_link = [x for x in data["links"] if x["rel"] == "self"][0]
|
|
assert self_link["type"] == "application/activity+json"
|
|
assert "href" in self_link
|