import pytest from pydantic import ValidationError from schemas.message_feedback_request import MessageFeedbackRequestDTO def test_feedback_request_accepts_like_without_content(): dto = MessageFeedbackRequestDTO(message_id="mid-1", feedback="like") assert dto.message_id == "mid-1" assert dto.feedback == "like" assert dto.feedback_content is None def test_feedback_request_requires_content_for_dislike(): with pytest.raises(ValidationError): MessageFeedbackRequestDTO(message_id="mid-2", feedback="dislike") def test_feedback_request_accepts_dislike_with_content(): dto = MessageFeedbackRequestDTO( message_id="mid-3", feedback="dislike", feedback_content="结果不准确", ) assert dto.feedback == "dislike" assert dto.feedback_content == "结果不准确"