test(swap): 为债券TRS期间结算自动互换10场景补单测 + SaveAutoSwapDeal接缝可测化
- 新增 BondTrsAutoSwapScenarioTest:覆盖测试场景/测试场景-0702复测两页 10个自动互换场景(含付息日历登记日2/28→支付日3/2、资金发生日3/3/3/4)、 部分平仓后按登记日持仓数量计算(剩余60%为54240)、同日多腿合并、 分红支付日偏移、无结算观察日不得凭空产生互换等,共11条断言全绿。 - SaveAutoSwapDeal 改为走 AddClientCash/AddSwapEvent/PersistFlowEvent 接缝 (默认实现与重构前行为一致,零行为变更);UpdateInitalPostion 由 private 改 protected virtual;GetPreDealDate 改 virtual,便于无DB单测。
This commit is contained in:
@@ -284,7 +284,7 @@ namespace YLErp.Modules.SwapModule
|
||||
/// <param name="valueDate"></param>
|
||||
/// <param name="eventTypes"></param>
|
||||
/// <returns></returns>
|
||||
public DateTime? GetPreDealDate(int tradeId, DateTime valueDate, List<int> eventTypes)
|
||||
public virtual DateTime? GetPreDealDate(int tradeId, DateTime valueDate, List<int> eventTypes)
|
||||
{
|
||||
Expression<Func<swap_event, bool>> eventExpression = x => x.SwapTradeId == tradeId && x.ValueDate <= valueDate && !x.Invalid && eventTypes.Contains(x.EventType);
|
||||
var swapEvent = DbContext.swap_event.Where(eventExpression).OrderByDescending(o => o.ValueDate).FirstOrDefault();
|
||||
|
||||
Reference in New Issue
Block a user