import pytest
from fansifter_common.legal_info.services import LegalInfoService
@pytest.fixture
def legal_info_service() -> LegalInfoService:
return LegalInfoService()
def test_legal_info_service(legal_info_service: LegalInfoService) -> None:
assert legal_info_service.is_date_of_birth_allowed("US") is False
assert legal_info_service.is_date_of_birth_allowed("EE") is True
def test_legal_info_prepare_privacy_links(legal_info_service: LegalInfoService) -> None:
it_privacy_links = legal_info_service.prepare_privacy_links_for_country("IT")
assert (
it_privacy_links
== """Politica sulla privacy e sui cookie | Termini e Condizioni"""
)
def test_legal_info_prepare_privacy_links_with_utm_source_tag(
legal_info_service: LegalInfoService,
) -> None:
it_privacy_links = legal_info_service.prepare_privacy_links_for_country(
"IT", utm_source="test"
)
assert (
it_privacy_links
== """Politica sulla privacy e sui cookie | Termini e Condizioni"""
)
def test_legal_info_add_url_tag_in_complex_url(
legal_info_service: LegalInfoService,
) -> None:
url = "https://test.com?foo=bar&baz=quux"
assert (
legal_info_service._add_url_utm_source(url, "test")
== "https://test.com?foo=bar&baz=quux&utm_source=test"
)
def test_legal_info_prepare_privacy_links_for_canada(
legal_info_service: LegalInfoService,
) -> None:
it_privacy_links = legal_info_service.prepare_privacy_links_for_country(
"CA",
)
assert (
it_privacy_links
== 'Privacy & Cookie Policy | '
'Terms and Conditions '
'
Confidentialité'
' et utilisation des cookies | '
"Conditions générales"
)