from unittest.mock import Mock import pytest from ...users import signatures @pytest.fixture def signature(user): user.signature = "Test" user.signature_parsed = "Test" user.signature_checksum = "Test" user.save() def test_user_signature_and_valid_checksum_is_set(user, signature, user_acl): request = Mock(scheme="http", get_host=Mock(return_value="127.0.0.1:800")) signatures.set_user_signature(request, user, user_acl, "Changed") assert user.signature == "Changed" assert user.signature_parsed == "
Changed
" assert user.signature_checksum assert signatures.is_user_signature_valid(user) def test_user_signature_is_cleared(user, signature, user_acl): request = Mock(scheme="http", get_host=Mock(return_value="127.0.0.1:800")) signatures.set_user_signature(request, user, user_acl, "") assert not user.signature assert not user.signature_parsed assert not user.signature_checksum def test_signature_validity_check_fails_for_incorrect_signature_checksum( user, signature ): assert not signatures.is_user_signature_valid(user)