refactor(return-leg): 抽取 PositionValueCalc 持仓价值汇总
SwapEodPositionService 8处 SwapPositionValue inline 公式替换: - 4处 InterestProfitSum * ratio + PosiProfitSum → PositionValueCalc.Calc(带ratio) - 4处 InterestProfitSum + PosiProfitSum → PositionValueCalc.Calc(默认ratio=1) 持仓价值 = 利息端收益 + 浮动端收益, 8处副本→1个纯函数。 这是最后一个高性价比的纯函数提取。 验证: 编译0错误, 全量513测试7失败(基线一致)。
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using YLErp.Modules.SwapModule.ReturnLegs;
|
||||
|
||||
namespace UnitTestProject.Modules.SwapModule.ReturnLegs
|
||||
{
|
||||
[TestClass]
|
||||
public class PositionValueCalcTest
|
||||
{
|
||||
[TestMethod]
|
||||
public void 无方向因子_利息加浮动()
|
||||
=> Assert.AreEqual(1500m, PositionValueCalc.Calc(1000m, 500m));
|
||||
|
||||
[TestMethod]
|
||||
public void 收取方向_利息乘1()
|
||||
=> Assert.AreEqual(1500m, PositionValueCalc.Calc(1000m, 500m, 1m));
|
||||
|
||||
[TestMethod]
|
||||
public void 支付方向_利息乘负1()
|
||||
=> Assert.AreEqual(-500m, PositionValueCalc.Calc(1000m, 500m, -1m));
|
||||
|
||||
[TestMethod]
|
||||
public void 零利息_等于浮动端()
|
||||
=> Assert.AreEqual(500m, PositionValueCalc.Calc(0m, 500m));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user