用途:把测试文件里的 as 类型断言迁移为 @total-typescript/shoehorn 提供的类型安全写法。它让你在测试中只传部分数据,同时保持 TypeScript 类型检查通过。仅限测试代码,禁止在生产代码中使用。
主要能力与对应关系:as Type 替换为 fromPartial(),用于传递仍能通过类型检查的部分数据;as unknown as Type(故意错误的数据)替换为 fromAny(),可保留自动补全;fromExact() 用于强制完整对象,之后可换成 fromPartial。常见场景是属性很多但只关心少数属性的大对象。
安装:npm i @total-typescript/shoehorn
迁移流程:先确认哪些测试文件的 as 断言造成问题、是否处理大对象、是否需要故意错误数据;然后安装依赖;用 grep -r " as [A-Z]" --include=".test.ts" --include=".spec.ts" 查找测试文件中的 as 断言;将 as Type 替换为 fromPartial(),将 as unknown as Type 替换为 fromAny();从 @total-typescript/shoehorn 添加导入;运行类型检查验证。
限制:官方资料未提供更多函数细节、版本要求与兼容范围,暂未提供。