- 债券付息查询/BondPayment/BondPaymentList这个界面 不再查询公司行为除权表 - 公司行为事件的说明 格式化一下变为:调整前:名义本金:XXXX 期初标的价格:XXXX 持仓数量:XXXX 调整后:名义本金:XXXX 期初标的价格:XXXX 持仓数量:XXXX - 报错信息修改:当某个标的的除权除息数据仍有交易引用时 则修改标的公司行为数据时则提示“不可修改,有交易【交易编号】使用了该条除权除息数据”。
60 lines
2.6 KiB
C#
60 lines
2.6 KiB
C#
using System;
|
|
using System.IO;
|
|
|
|
namespace YLErp.Modules.EodModule
|
|
{
|
|
[TestClass]
|
|
public class DividendInfoEditGuardMessageTest
|
|
{
|
|
[TestMethod]
|
|
public void AddDividendInfos_ReportsTheReferencingTradeNumberWhenAnExecutedActionIsEdited()
|
|
{
|
|
var source = ReadDividendServiceSource();
|
|
var addDividendInfos = ExtractMethod(source, "public bool AddDividendInfos", "public bool checkDividendInfoExecuteStatus");
|
|
var controllerSource = ReadExDividendInfoControllerSource();
|
|
var deleteDividend = ExtractMethod(controllerSource, "public JsonResult deleteDividend", "public JsonResult ImportDividendInfo");
|
|
|
|
Assert.IsTrue(addDividendInfos.Contains("不可修改,有交易【", StringComparison.Ordinal));
|
|
Assert.IsTrue(addDividendInfos.Contains("使用了该条除权除息数据", StringComparison.Ordinal));
|
|
Assert.IsTrue(deleteDividend.Contains("不可修改,有交易【", StringComparison.Ordinal));
|
|
Assert.IsTrue(deleteDividend.Contains("使用了该条除权除息数据", StringComparison.Ordinal));
|
|
}
|
|
|
|
private static string ExtractMethod(string source, string startMarker, string endMarker)
|
|
{
|
|
var start = source.IndexOf(startMarker, StringComparison.Ordinal);
|
|
Assert.IsTrue(start >= 0, $"Could not find method: {startMarker}");
|
|
var end = source.IndexOf(endMarker, start + startMarker.Length, StringComparison.Ordinal);
|
|
Assert.IsTrue(end >= 0, $"Could not find method end: {endMarker}");
|
|
return source.Substring(start, end - start);
|
|
}
|
|
|
|
private static string ReadDividendServiceSource()
|
|
{
|
|
return ReadSource("YLErpDAL", "Modules", "TradeModule", "DealModule", "DividendService.cs");
|
|
}
|
|
|
|
private static string ReadExDividendInfoControllerSource()
|
|
{
|
|
return ReadSource("YLErpWeb", "Controllers", "ex_dividend_infoController.cs");
|
|
}
|
|
|
|
private static string ReadSource(params string[] relativePath)
|
|
{
|
|
var directory = new DirectoryInfo(AppContext.BaseDirectory);
|
|
while (directory != null)
|
|
{
|
|
var path = Path.Combine(new[] { directory.FullName }.Concat(relativePath).ToArray());
|
|
if (File.Exists(path))
|
|
{
|
|
return File.ReadAllText(path);
|
|
}
|
|
directory = directory.Parent;
|
|
}
|
|
|
|
Assert.Fail("Could not locate DividendService.cs from the test output directory.");
|
|
return string.Empty;
|
|
}
|
|
}
|
|
}
|