hjhan
f0ef37b599
test(swap): SwapFlowEventService seam改造+MergePageEventScenarioTest(6场景全绿)
借鉴 testable 分支,只取 seam(排除 PosiPnl/NetSettmentAmount 公式改动和 MergePageEvent 拆分),
填补当前分支对开平仓合成(MergePageEvent)零覆盖的空白。
SwapFlowEventService 新增11个 protected virtual seam:
- FindTrade/FindTradeExtend/FindPositions/FindAndInvalidateFutureEvents
- GetUnderlying/GetNextBusinessDay/ResolvePositionId
- PersistEvents(替代InitEvent内联Add+SaveChanges)/BeginTransaction/CommitTransaction/RollbackTransaction
MergePageEvent/InitEvent: private→protected virtual,内联DB调用替换为seam。
InitEvent 移除 DbContext.swap_flow_event.Add(转入PersistEvents,纯函数化)。
SwapTradeBaseService.UpdateDbOption: public void→public virtual(测试override用)。
新增测试(借鉴testable分支):
- TestableSwapFlowEventService.cs(集中式共享包装类)
- MergePageEventScenarioTest.cs(6场景全绿):
Scenario1 单条无持仓开仓 / Scenario2 同向追加 / Scenario3 反向全平
Scenario4 反向部分平+开 / Scenario5 一开一平 / Scenario6 复杂组合
**未借鉴**:SearchPositionFlowEvent的PosiPnl/NetSettmentAmount公式改动(行为变更)、
MergePageEvent拆分ProcessSingleFlow等(非必需重构)。
SwapModule 169测试全绿(+6),无回归。
2026-07-03 09:26:13 +08:00
..
2026-07-02 09:11:38 +08:00
2026-07-02 08:39:39 +08:00
2026-07-01 18:40:48 +08:00
2026-07-02 09:02:43 +08:00
2026-07-02 09:37:18 +08:00
2026-07-01 18:25:44 +08:00
2026-07-03 09:04:57 +08:00
2026-06-02 14:41:17 +08:00
2026-06-02 14:41:17 +08:00
2026-07-02 10:47:23 +08:00
2026-07-02 09:37:18 +08:00
2026-07-03 09:20:59 +08:00
2026-07-03 09:26:13 +08:00
2026-07-02 09:20:41 +08:00
2026-07-02 12:59:16 +08:00
2026-07-01 17:07:55 +08:00
2026-07-03 08:30:36 +08:00
2026-06-26 09:13:37 +08:00
2026-02-13 18:12:00 +08:00
2026-07-01 13:38:24 +08:00
2026-07-01 12:22:57 +08:00
2026-07-03 09:26:13 +08:00
2026-07-03 09:20:59 +08:00