|
|
@@ -703,10 +703,12 @@ class LsyMerchantServiceTest {
|
|
|
/**
|
|
|
* ★ {@code update} 返回 <b>0</b> ⇒ {@code NOT_FOUND},且<b>不抛</b>。
|
|
|
*
|
|
|
- * <p>可达窗口只有「定位到写入之间那一行没了」(并发删除 / 主键换了)。正因为窗口窄,
|
|
|
- * 它此前<b>零覆盖</b>:加这段处理之前,{@code merchantMapper.update} 返回 0 的桩全文件只有一处,
|
|
|
- * 且属于 {@code save} 那条路径的用例({@code save_updateBranch_zeroAffectedRows_throws404})⇒ 删掉这段处理全量照样绿。
|
|
|
- * 而它是这条路径上唯一把「DB 说一行都没改到」翻译成「怎么应答上游」的地方。
|
|
|
+ * <p>可达窗口只有「定位到写入之间那一行没了」(并发删除 / 主键换了)。加这段处理**之前**,全文件
|
|
|
+ * {@code merchantMapper.update} 返回 0 的桩只有一处、且属于 {@code save} 路径的用例
|
|
|
+ * ({@code save_updateBranch_zeroAffectedRows_throws404})—— 那时确实没有用例钉它。**现在有三条**:
|
|
|
+ * 本用例 + 两个经 {@code failBranchLogs} 遍历全分支的用例(2026-09-23 实测:把 {@code updated == 0}
|
|
|
+ * 改成 {@code updated == -1} 跑全量,红 3 条、正是这三条)。它是这条路径上唯一把「DB 说一行都没改到」
|
|
|
+ * 翻译成「怎么应答上游」的地方。
|
|
|
*
|
|
|
* <p>为什么不抛:调用方要的是一个结果去决定怎么应答上游,而这种情况的正确答案与
|
|
|
* 「找不到」<b>同向</b>(让上游重推)。抛出去会把「重推一次就好」变成一个 500。
|