Add Docker-executed pytest suite with >90% coverage
This commit is contained in:
23
apps/core/tests/test_consent.py
Normal file
23
apps/core/tests/test_consent.py
Normal file
@@ -0,0 +1,23 @@
|
||||
import pytest
|
||||
from django.http import HttpRequest, HttpResponse
|
||||
|
||||
from apps.core.consent import CONSENT_COOKIE_NAME, ConsentService
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_consent_round_trip(rf):
|
||||
request = HttpRequest()
|
||||
response = HttpResponse()
|
||||
ConsentService.set_consent(response, analytics=True, advertising=False)
|
||||
cookie = response.cookies[CONSENT_COOKIE_NAME].value
|
||||
request.COOKIES[CONSENT_COOKIE_NAME] = cookie
|
||||
state = ConsentService.get_consent(request)
|
||||
assert state.analytics is True
|
||||
assert state.advertising is False
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_consent_post_view(client):
|
||||
resp = client.post("/consent/", {"accept_all": "1"}, follow=False)
|
||||
assert resp.status_code == 302
|
||||
assert CONSENT_COOKIE_NAME in resp.cookies
|
||||
Reference in New Issue
Block a user