takahe/tests/activities/views/test_compose.py
Andrew Godwin 55de31e3de Fix tests
2023-05-02 11:05:03 -06:00

27 lines
908 B
Python

import pytest
from django.test.client import Client
from pytest_django.asserts import assertContains
from activities.models import Post
from core.models import Config
from users.models import Identity
@pytest.mark.django_db
def test_rate_limit(identity: Identity, client_with_user: Client):
"""
Tests that the posting rate limit comes into force
"""
# First post should go through
assert identity.posts.count() == 0
response = client_with_user.post(
f"/@{identity.handle}/compose/", data={"text": "post 1", "visibility": "0"}
)
assert response.status_code == 302
assert identity.posts.count() == 1
# Second should not
response = client_with_user.post(
f"/@{identity.handle}/compose/", data={"text": "post 2", "visibility": "0"}
)
assertContains(response, "You must wait at least", status_code=200)
assert identity.posts.count() == 1