/// <summary> /// Throws a <see cref="System.ArgumentException"/> if the argument value is /// not after the given date/time. /// </summary> /// <param name="argValue">The argument value.</param> /// <param name="datetime">The date/time the value must be greater than.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message to be used.</param> public static void IsAfter(DateTime argValue, DateTime datetime, string argName, string message) { Insist.EvaluateArgument( () => { return(argValue > datetime); }, argName, message, () => { return(String.Format(DATE_TIME_AFTER_DEFAULT_MESSAGE, datetime)); } ); }
/// <summary> /// Throws an <see cref="System.ArgumentException"/> if the given argument value /// is not false. /// </summary> /// <param name="argValue">The argument value.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message.</param> public static void IsFalse(bool argValue, string argName, string message) { Insist.EvaluateArgument( () => { return(!argValue); }, argName, message, () => { return(IS_FALSE_DEFAULT_MESSAGE); } ); }
/// <summary> /// Throws an <see cref="System.ArgumentException"/> if the given collection is empty. /// </summary> /// <typeparam name="T">The type of the collection.</typeparam> /// <param name="argValue">The argument value.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message.</param> public static void IsNotEmpty <T>(IEnumerable <T> argValue, string argName, string message) { Insist.IsNotNull(argValue, "argValue"); Insist.EvaluateArgument( () => { return(argValue.Count() > 0); }, argName, message, () => { return(COLLECTION_EMPTY_DEFAULT_MESSAGE); } ); }
/// <summary> /// Throws an <see cref="System.InvalidOperationException"/> if the given argument value /// exists in the collection provided. /// </summary> /// <typeparam name="T">The type of the argument.</typeparam> /// <param name="argValue">The argument value.</param> /// <param name="disallowed">The collection of disallowed values.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message to be used.</param> public static void NotIn <T>(T argValue, IEnumerable <T> disallowed, string argName, string message) { Insist.IsNotNull(disallowed, "disallowed"); Insist.EvaluateArgument( () => { return(!disallowed.Contains(argValue)); }, argName, message, () => { return(NOT_IN_DEFAULT_MESSAGE); } ); }
/// <summary> /// Throws an <see cref="System.ArgumentException"/> if the argument value /// does not match the expected value as defined by the given function. /// </summary> /// <typeparam name="T">The type of the argument.</typeparam> /// <param name="argValue">The argument value.</param> /// <param name="expectedValue">The expected value.</param> /// <param name="function">The comparison function to be used.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message.</param> public static void Is <T>(T argValue, T expectedValue, Func <T, T, bool> function, string argName, string message) { Insist.IsNotNull(function, "function"); Insist.EvaluateArgument( () => { return(function(argValue, expectedValue)); }, argName, message, () => { return(String.Format(IS_DEFAULT_MESSAGE, expectedValue)); } ); }
/// <summary> /// Throws a <see cref="System.ArgumentException"/> if the argument value does /// not conform to the given predicate. /// </summary> /// <typeparam name="T">The argument type.</typeparam> /// <param name="argValue">The argument value.</param> /// <param name="predicate">The predicate.</param> /// <param name="argName">The argument name.</param> /// <param name="message">The message.</param> public static void Conforms <T>(T argValue, Predicate <T> predicate, string argName, string message) { Insist.IsNotNull(predicate, "predicate"); Insist.EvaluateArgument( () => { return(predicate(argValue)); }, argName, message, () => { return(CONFORMS_DEFAULT_MESSAGE); } ); }