import pytest from pydantic import ValidationError from main import todocreate def test_todocreate_requires_task() -> None: with pytest.raises(ValidationError): todocreate() def test_todocreate_accepts_valid_task() -> None: todo_data = todocreate(task = "学习测试单元") assert todo_data.task == "学习测试单元" def test_todocreate_rejects_empty_task() -> None: with pytest.raises(ValidationError): todocreate(task="") def test_todocreate_rejects_blank_task() -> None: with pytest.raises(ValidationError): todocreate(task=" ") def test_todocreate_rejects_task_longer_than_200_characters() -> None: long_task = "a" * 201 with pytest.raises(ValidationError): todocreate(task=long_task)