23 lines
840 B
C#
23 lines
840 B
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.Reflection;
|
|
|
|
namespace YLErp.Modules.RiskEngine
|
|
{
|
|
[TestClass]
|
|
public class RiskConcurrencyTokenTest
|
|
{
|
|
[DataTestMethod]
|
|
[DataRow(typeof(glms_risk_rule))]
|
|
[DataRow(typeof(glms_risk_rule_application))]
|
|
[DataRow(typeof(glms_risk_variable))]
|
|
public void Version_IsConfiguredAsConcurrencyToken(Type entityType)
|
|
{
|
|
var versionProperty = entityType.GetProperty("Version", BindingFlags.Instance | BindingFlags.Public);
|
|
|
|
Assert.IsNotNull(versionProperty, $"{entityType.Name} 缺少 Version 属性");
|
|
Assert.IsNotNull(
|
|
versionProperty.GetCustomAttribute<ConcurrencyCheckAttribute>(),
|
|
$"{entityType.Name}.Version 未配置为 EF concurrency token");
|
|
}
|
|
}
|
|
} |