diff UnitTests/CS/Validation/RegExValidationTest.cs @ 0:f990fcb411a9

Копия текущей версии из github
author cin
date Thu, 27 Mar 2014 21:46:09 +0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/UnitTests/CS/Validation/RegExValidationTest.cs	Thu Mar 27 21:46:09 2014 +0400
@@ -0,0 +1,30 @@
+using BLToolkit.EditableObjects;
+using BLToolkit.Reflection;
+using BLToolkit.Validation;
+using NUnit.Framework;
+
+namespace Validation
+{
+	[TestFixture]
+	public class RegExValidationTest
+	{
+		public abstract class Entity : EditableObject
+		{
+			[RegEx("[a-zA-Z0-9]*")]
+			public string AlphaNumeric;
+		}
+
+		[Test]
+		public void Test()
+		{
+			Entity entity = (Entity)TypeAccessor.CreateInstance(typeof(Entity));
+
+			entity.AlphaNumeric = null; Assert.IsTrue(entity.IsValid("AlphaNumeric"));
+			entity.AlphaNumeric = ""; Assert.IsTrue(entity.IsValid("AlphaNumeric"));
+			entity.AlphaNumeric = "abAB01"; Assert.IsTrue(entity.IsValid("AlphaNumeric"));
+			entity.AlphaNumeric = "01ABab"; Assert.IsTrue(entity.IsValid("AlphaNumeric"));
+			entity.AlphaNumeric = "ab_AB.01"; Assert.IsFalse(entity.IsValid("AlphaNumeric"));
+			entity.AlphaNumeric = "33###"; Assert.IsFalse(entity.IsValid("AlphaNumeric"));
+		}
+	}
+}