def test_it_returns_already_verified(self, db): user = UserFactory(username="******", email="*****@*****.**", is_email_verified=True) assert verify_code(sign( SigningPayload.from_user(user))) == ("already_verified", user)
def test_it_returns_ok_sets_is_email_verified(self, db): user = UserFactory(username="******", email="*****@*****.**") assert verify_code(sign(SigningPayload.from_user(user))) == ("ok", user) user.refresh_from_db() assert user.is_email_verified is True
def test_it_returns_invalid_username(self, db): assert verify_code(sign(SigningPayload("abcdef", "j"))) == ("invalid_username", None)
def test_it_returns_signature_expired(self): with freeze_time("2001-01-01"): code = sign(SigningPayload("blarg", "*****@*****.**")) assert verify_code(code) == ("expired", None)
def test_it_returns_invalid_code(self): for code in ["", "blarg"]: assert verify_code(code) == ("invalid_code", None)
def test_it_returns_email_mismatch(self, db): UserFactory(username="******", email="*****@*****.**") assert verify_code(sign(SigningPayload("boop", "*****@*****.**"))) == ( "email_mismatch", None, )
def test_it_returns_malformed_payload(self): assert verify_code(sign_str("not json!")) == ("malformed_payload", None)