2026-07-30 16:52:07 +08:00
|
|
|
import pytest
|
|
|
|
|
from pydantic import ValidationError
|
|
|
|
|
|
|
|
|
|
from main import todoupdate
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_todoupdate_rejects_empty_update() -> None:
|
|
|
|
|
with pytest.raises(ValidationError):
|
|
|
|
|
todoupdate()
|
|
|
|
|
|
2026-07-31 10:26:51 +08:00
|
|
|
|
2026-07-30 16:52:07 +08:00
|
|
|
def test_todoupdate_accepts_provided_value() -> None:
|
|
|
|
|
update_data = todoupdate(
|
2026-07-31 10:26:51 +08:00
|
|
|
task="学习测试单元",
|
|
|
|
|
completion=True,
|
|
|
|
|
)
|
2026-07-30 16:52:07 +08:00
|
|
|
|
|
|
|
|
assert update_data.task == "学习测试单元"
|
|
|
|
|
|
2026-07-31 10:26:51 +08:00
|
|
|
|
2026-07-30 16:52:07 +08:00
|
|
|
def test_todoupdate_accepts_task_only() -> None:
|
|
|
|
|
update_data = todoupdate(task="修改后的任务")
|
|
|
|
|
|
|
|
|
|
assert update_data.task == "修改后的任务"
|
|
|
|
|
assert update_data.completion is None
|