2026-06-27 17:54:44 +08:00

25 lines
838 B
Python

from desktop_mark.models import Annotation, AnnotationProject, AnnotationType, Rect, WindowInfo
from desktop_mark.storage import project_from_dict, project_to_dict
def test_project_json_round_trip() -> None:
project = AnnotationProject(
window=WindowInfo(123, "记事本", "notepad.exe", Rect(1, 2, 300, 400)),
custom_window_name="登录页",
window_description="用户登录窗口",
annotations=[
Annotation(
id="a1",
rect=Rect(10, 20, 30, 40),
control_name="用户名输入框",
description="输入登录用户名",
type=AnnotationType.INPUT,
actions=["input_text"],
)
],
)
restored = project_from_dict(project_to_dict(project))
assert restored == project