public void ValidationArgumentTest_001()
        {
            var v = new ValidationArgument <int>("Test", 42);

            Assert.AreEqual("Test", v.Name);
            Assert.AreEqual(42, v.Value);
        }
 public static ValidationArgument <string> EndsWith(this ValidationArgument <string> arg, string value, StringComparison stringComparison)
 {
     if (!arg.Value.EndsWith(value, stringComparison))
     {
         throwEndsWith(arg.Name, value);
     }
     return(arg);
 }
 public static ValidationArgument <T> NotNull <T>(this ValidationArgument <T> arg)
 {
     if (arg.Value.IsNull())
     {
         throw new ArgumentNullException(arg.Name);
     }
     return(arg);
 }
 public static ValidationArgument <string> StartsWith(this ValidationArgument <string> arg, string value)
 {
     if (!arg.Value.StartsWith(value))
     {
         throwStartsWith(arg.Name, value);
     }
     return(arg);
 }
 public static ValidationArgument <T> InRange <T>(this ValidationArgument <T> arg, T minValue, T maxValue) where T : IComparable
 {
     if (arg.Value.CompareTo(minValue) < 0 || arg.Value.CompareTo(maxValue) > 0)
     {
         throwOutOfRange(arg.Name, minValue.ToString(), maxValue.ToString());
     }
     return(arg);
 }
        public void ValidationArgumentTest_003()
        {
            var v = new ValidationArgument <string>("Test", "Chri");

            var actual = v + "s";

            Assert.AreEqual("Chris", actual);
        }
 public static ValidationArgument <string> Contains(this ValidationArgument <string> arg, string value)
 {
     if (!arg.Value.Contains(value))
     {
         throwContains(arg.Name, value);
     }
     return(arg);
 }
 public static ValidationArgument <int> InRange(this ValidationArgument <int> arg, int minValue, int maxValue)
 {
     if (arg.Value < minValue || arg.Value > maxValue)
     {
         throwOutOfRange(arg.Name, minValue.ToString(), maxValue.ToString());
     }
     return(arg);
 }
 public static ValidationArgument <string> NotNullOrWhiteSpace(this ValidationArgument <string> arg)
 {
     if (arg.Value.IsNullOrWhiteSpace())
     {
         throw new ArgumentException("String can not be Null or WhiteSpace", arg.Name);
     }
     return(arg);
 }
 public static ValidationArgument <float> LessThan(this ValidationArgument <float> arg, float value)
 {
     if (arg.Value >= value)
     {
         throwLessThan(arg.Name, arg.Value.ToString(), value.ToString());
     }
     return(arg);
 }
 public static ValidationArgument <string> IsMatch(this ValidationArgument <string> arg, string regularExpressionToMatch, RegexOptions options)
 {
     if (!Regex.IsMatch(arg.Value, regularExpressionToMatch, options))
     {
         throwIsMatch(arg.Name, arg.Value, regularExpressionToMatch);
     }
     return(arg);
 }
 public static ValidationArgument <Guid> NotEmpty(this ValidationArgument <Guid> arg)
 {
     if (arg.Value == Guid.Empty)
     {
         throw new ArgumentOutOfRangeException(arg.Name, "Guid can not be equal to Guid.Empty");
     }
     return(arg);
 }
 public static ValidationArgument <string> LongerThan(this ValidationArgument <string> arg, int value)
 {
     if (arg.Value.Length <= value)
     {
         throw new ArgumentException(string.Format("Length ({2}) of Parameter ({0}) must be greater than {1}", arg.Name, value.ToString(), arg.Value.Length), arg.Name);
     }
     return(arg);
 }
 public static ValidationArgument <string> NotEmpty(this ValidationArgument <string> arg)
 {
     if (arg.Value.Length == 0)
     {
         throw new ArgumentOutOfRangeException(arg.Name);
     }
     return(arg);
 }
 public static ValidationArgument <T> GreaterThan <T>(this ValidationArgument <T> arg, T value) where T : IComparable
 {
     if (arg.Value.CompareTo(value) <= 0)
     {
         throwGreaterThan(arg.Name, arg.Value.ToString(), value.ToString());
     }
     return(arg);
 }
 public static ValidationArgument <float?> GreaterThan(this ValidationArgument <float?> arg, float value)
 {
     if (arg.Value <= value)
     {
         throwGreaterThan(arg.Name, arg.Value.ToString(), value.ToString());
     }
     return(arg);
 }
 public static ValidationArgument <IEnumerable <T> > NotEmpty <T>(this ValidationArgument <IEnumerable <T> > arg)
 {
     if (arg.Value.IsEmpty())
     {
         throw new ArgumentOutOfRangeException(arg.Name);
     }
     return(arg);
 }
        public void ValidationArgumentTest_002()
        {
            var v = new ValidationArgument <int>("Test", 42);

            var actual = 1 + v;

            Assert.AreEqual(43, actual);
        }
 public static ValidationArgument <T> NotEmpty <T>(this ValidationArgument <T> arg) where T : System.Collections.IEnumerable
 {
     arg.NotNull();
     if (arg.Value.IsEmpty())
     {
         throw new ArgumentOutOfRangeException(arg.Name);
     }
     return(arg);
 }