用途:为 tldraw SDK 编写单元测试与集成测试,适用于新增测试、补充覆盖率或修复 packages/editor、packages/tldraw 中失败的测试。测试框架为 Vitest,需在工作区目录而非仓库根目录运行。
主要能力:单元测试与源文件同目录(如 Vec.ts 与 Vec.test.ts);集成测试放在 src/test/ 目录;形状/工具测试与实现同目录。packages/editor 测核心原语、几何、管理器与基础编辑器功能;packages/tldraw 测默认形状/工具,多数集成测试在此。
使用方式:集成测试用 TestEditor,测试编辑器初始化或自定义配置用原始 Editor。常用方法包括 pointerDown/pointerMove/pointerUp、click、doubleClick、keyDown/keyUp、expectToBeIn、expectShapeToMatch、createShapes、updateShapes、select、undo/redo 等。指针事件可指定 target(canvas/shape/handle/selection)与 handle。断言支持 toMatchObject 部分匹配、toCloselyMatchObject 浮点匹配。可用 vi.spyOn 模拟并需 mockRestore,用 vi.useFakeTimers 处理时间相关行为。运行命令:cd packages/tldraw && yarn test run;cd packages/tldraw && yarn test run --grep "SelectTool";cd packages/editor && yarn test run --grep "Vec";监听模式 cd packages/tldraw && yarn test。
适用场景:形状与工具行为、状态机、撤销重做、TypeScript 类型、自定义形状、副作用与事件测试。
限制:资料未提供安装步骤、版本要求、收费信息及具体平台支持,暂未提供。