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/activities/models/test_post.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tests/activities/models/test_post.py (limited to 'tests/activities/models') diff --git a/tests/activities/models/test_post.py b/tests/activities/models/test_post.py new file mode 100644 index 0000000..5c7fca2 --- /dev/null +++ b/tests/activities/models/test_post.py @@ -0,0 +1,31 @@ +import pytest +from pytest_httpx import HTTPXMock + +from activities.models import Post + + +@pytest.mark.django_db +def test_fetch_post(httpx_mock: HTTPXMock): + """ + Tests that a post we don't have locally can be fetched by by_object_uri + """ + httpx_mock.add_response( + url="https://example.com/test-post", + json={ + "@context": [ + "https://www.w3.org/ns/activitystreams", + ], + "id": "https://example.com/test-post", + "type": "Note", + "published": "2022-11-13T23:20:16Z", + "url": "https://example.com/test-post", + "attributedTo": "https://example.com/test-actor", + "content": "BEEEEEES", + }, + ) + # Fetch with a HTTP access + post = Post.by_object_uri("https://example.com/test-post", fetch=True) + assert post.content == "BEEEEEES" + assert post.author.actor_uri == "https://example.com/test-actor" + # Fetch again with a DB hit + assert Post.by_object_uri("https://example.com/test-post").id == post.id -- cgit v1.2.3