rulesmanager.vb

来自「C# 版本的一个三层商业架构」· VB 代码 · 共 62 行

VB
62
字号
<TestFixture()> _
Public Class RulesManager

  <Test()> _
  Public Sub BreakRequiredRule()
    Session.Clear()
    Dim root As HasRulesManager = HasRulesManager.NewHasRulesManager
    Assert.AreEqual(False, root.IsValid, "Should not be valid")
    Assert.AreEqual(1, root.GetBrokenRulesCollection.Count)
    Assert.AreEqual("Name required", root.GetBrokenRulesCollection.Item(0).Description)
  End Sub

  <Test()> _
  Public Sub BreakLengthRule()
    Session.Clear()
    Dim root As HasRulesManager = HasRulesManager.NewHasRulesManager
    root.Name = "12345678901"
    Assert.AreEqual(False, root.IsValid, "Should not be valid")
    Assert.AreEqual(1, root.GetBrokenRulesCollection.Count)
    'Assert.AreEqual("Name too long", root.GetBrokenRulesCollection.Item(0).Description)
    Assert.AreEqual("The value for Name is too long", root.GetBrokenRulesCollection.Item(0).Description)
  End Sub

  <Test()> _
  Public Sub UnBreakLengthRule()
    Session.Clear()
    Dim root As HasRulesManager = HasRulesManager.NewHasRulesManager
    root.Name = "12345678901"
    Assert.AreEqual(False, root.IsValid, "Should not be valid")
    Assert.AreEqual(1, root.GetBrokenRulesCollection.Count)
    'Assert.AreEqual("Name too long", root.GetBrokenRulesCollection.Item(0).Description)
    Assert.AreEqual("The value for Name is too long", root.GetBrokenRulesCollection.Item(0).Description)

    root.Name = "1234567890"
    Assert.AreEqual(True, root.IsValid, "Should be valid")
    Assert.AreEqual(0, root.GetBrokenRulesCollection.Count)
  End Sub

  <Test()> _
  Public Sub BreakLengthRuleAndClone()
    Session.Clear()
    Dim root As HasRulesManager = HasRulesManager.NewHasRulesManager
    root.Name = "12345678901"
    Assert.AreEqual(False, root.IsValid, "Should not be valid")
    Assert.AreEqual(1, root.GetBrokenRulesCollection.Count)
    'Assert.AreEqual("Name too long", root.GetBrokenRulesCollection.Item(0).Description)
    Assert.AreEqual("The value for Name is too long", root.GetBrokenRulesCollection.Item(0).Description)

    root = DirectCast(root.Clone, HasRulesManager)
    Assert.AreEqual(False, root.IsValid, "Should not be valid")
    Assert.AreEqual(1, root.GetBrokenRulesCollection.Count)
    'Assert.AreEqual("Name too long", root.GetBrokenRulesCollection.Item(0).Description)
    Assert.AreEqual("The value for Name is too long", root.GetBrokenRulesCollection.Item(0).Description)

    root.Name = "1234567890"
    Assert.AreEqual(True, root.IsValid, "Should be valid")
    Assert.AreEqual(0, root.GetBrokenRulesCollection.Count)

  End Sub

End Class

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?