已合并
feat: 补充is_close算子op_host infershape UT #4065
wangqi_ai创建于 7月14日
feat: 补充is_close算子op_host infershape UT #4065
已合并
Pull Request已成功合入, 合并人@CANN-robot
(感谢 wangqi_ai 的贡献)atomgit-bot
7月14日 评论:
7月14日 评论:
变更摘要
该 PR 为 IsClose 算子新增了 op_host 层面的 infershape 单元测试文件 test_is_close_infershape.cpp,主要覆盖不同数据类型下的 shape 推导正确性以及广播(broadcast)场景,包括相同 shape、不同维度广播、标量广播、一维张量和含零维度张量等典型情况。
主要改动
- 新增
test_is_close_infershape.cpp测试文件:为IsClose算子添加完整的 infershape 单元测试套件,共包含 8 个TEST_F用例,使用gert::InfershapeContextPara和ExecuteTestCase框架验证 shape 推导结果。 - 多数据类型覆盖:测试了
ge::DT_FLOAT、ge::DT_FLOAT16、ge::DT_INT32、ge::DT_BF16四种输入数据类型,输出统一为ge::DT_BOOL,验证不同精度下 shape 推导的一致性。 - 广播场景验证:包含相同 shape(如
{2,3,4}与{2,3,4})、不同维度广播({2,3,4}与{3,4})、标量广播({2,3,4}与{1})等典型广播组合,确认输出 shape 为广播后的最大 shape。 - 边界维度测试:覆盖一维张量(
{10})和含零维度的空张量({0,3,4})场景,确保极端 shape 条件下 infershape 行为正确。


atomgit-bot
7月14日 评论:
7月14日 评论:
代码审查
审查总结
变更文件:
math/is_close/tests/ut/op_host/test_is_close_infershape.cpp(新增,+172 行)
审查结论:
| 优先级 | 数量 |
|---|---|
| P0 | 0 |
| P1 | 0 |
| P2 | 0 |
| P3 | 1 |
整体风险评估:低风险。 该测试文件结构规范、用例合理,与项目中其他同类 infershape 测试的模式一致。8 个测试用例覆盖了多种数据类型(float、float16、int32、bf16)、一维/三维张量、广播及标量广播、空张量等场景,测试预期与 InferShape4Broadcast 的语义匹配。
唯一记录的是 P3 级建议:PR 描述声明覆盖 shape 不匹配的异常场景,但 op_host 测试文件中缺少对应的失败用例。这不影响现有测试的正确性,属于可选的覆盖率增强点。
⚠️ 已识别出整体风险,但无法提取行内评论,请参考整体评估。


7月14日 添加了label:cann-cla/yes
CANN-robot
7月14日 评论:
7月14日 评论:
此处折叠了76条消息 查看更多
songkai111
8月1日 评论:
8月1日 评论:
/approve


8月1日 添加了label:approved
TangPC
8月1日 评论:
8月1日 评论:
/lgtm
/approve


8月1日 添加了label:lgtm
8月1日 合入了pull request
描述
补充is_close算子的op_api和op_host infershape级别单元测试,覆盖以下场景:
关联的Issue
#2465
测试
文档更新
类型标签
关联 Issue: #2465