Ver Fonte

test(订单实时): 订正 OrderEventRelayTest 里指向假 E2E 的注释

该注释说「真事务行为由 Task 14 的开放 API 建单 E2E 端到端验」——开放 API 那条腿
(LeshouyingOpenController:93-94)在 controller 里裸 insert、没有事务,且该 E2E 从未跑过。
改为指向 OrderEventRelayTransactionBoundaryTest(本轮新增,执行级验证)。
alphaH há 1 semana atrás
pai
commit
e1efcae7d0

+ 4 - 1
java/src/test/java/com/payment/platform/module/payment/stream/OrderEventRelayTest.java

@@ -42,8 +42,11 @@ class OrderEventRelayTest {
         // 「提交后才投递 + 无事务也投递」这条语义在这里用注解断言钉住,不去拉容器级测试:
         // 本仓唯一那条 @SpringBootTest(PaymentApplicationContextTest,2026-09-22 的 R-5)要库隧道,
         // 还得替换 TaskScheduler 掐掉定时任务 —— 否则上下文一 refresh 就真朝支付网关发 HTTP。
-        // 真事务行为由 Task 14 的开放 API 建单 E2E 端到端验(信号早于提交 ⇒ 重拉看不到新行 ⇒ 红)。
+        // 真事务行为由 OrderEventRelayTransactionBoundaryTest 执行级验证(真容器 + 真事件多播器,
+        // 不需要库隧道、也不需要替换 TaskScheduler)。
         // ⚠ 别再写「本仓没有容器测试」:那句自 2026-09-22 起就不成立。
+        // ⚠ 也别再写「由开放 API 建单 E2E 端到端验」:开放 API 那条腿在 controller 里裸 insert、
+        //   没有事务(2026-10-05 实测);25 个发布点里只有 HarOrderService.syncFromUpstream 在事务里。
         Method m = OrderEventRelay.class.getMethod("onOrderChanged", OrderChangedEvent.class);
         TransactionalEventListener ann = m.getAnnotation(TransactionalEventListener.class);
         assertNotNull(ann, "没有这个注解 = 事件永远不被投递");