public ConditionalAttribute(string propertyName, IsBetween ctype, object value1, object value2) { conditions = new Where[2]; conditions[0] = new Where(propertyName, Comparison.Equals, value1, Logical.AND); conditions[1] = new Where(propertyName, Comparison.Equals, value2, Logical.AND); switch (ctype) { case IsBetween.ExclusiveYes: conditions[0].comparison = Comparison.GreaterThan; conditions[1].comparison = Comparison.LessThan; break; case IsBetween.ExclusiveNo: conditions[0].comparison = Comparison.LessThan; conditions[1].comparison = Comparison.GreaterThan; break; case IsBetween.InclusiveYes: conditions[0].comparison = Comparison.EqualsOrGreaterThan; conditions[1].comparison = Comparison.EqualsOrLessThan; break; case IsBetween.InclusiveNo: conditions[0].comparison = Comparison.EqualsOrLessThan; conditions[1].comparison = Comparison.EqualsOrGreaterThan; break; } }
/// <summary> /// /// </summary> /// <param name="propertyName"></param> /// <param name="isBetween"></param> /// <param name="min"></param> /// <param name="max"></param> public ConditionalAttribute(string propertyName, IsBetween isBetween, object min, object max) { Conditions = new Condition[2]; Conditions[0] = new Condition(propertyName, Operator.Equals, min, Logical.And); Conditions[1] = new Condition(propertyName, Operator.Equals, max, Logical.And); switch (isBetween) { case IsBetween.ExclusiveYes: Conditions[0].Operator = Operator.GreaterThan; Conditions[1].Operator = Operator.LessThan; break; case IsBetween.ExclusiveNo: Conditions[0].Operator = Operator.LessThan; Conditions[1].Operator = Operator.GreaterThan; break; case IsBetween.InclusiveYes: Conditions[0].Operator = Operator.EqualsOrGreaterThan; Conditions[1].Operator = Operator.EqualsOrLessThan; break; case IsBetween.InclusiveNo: Conditions[0].Operator = Operator.EqualsOrLessThan; Conditions[1].Operator = Operator.EqualsOrGreaterThan; break; } }
public void IsBetween_HandlesType_ReturnsType() { //------------Setup for test-------------------------- var isBetween = new IsBetween(); //------------Execute Test--------------------------- //------------Assert Results------------------------- Assert.AreEqual(enDecisionType.IsBetween, isBetween.HandlesType()); }
public void IsBetween_Invoke_TrueIsReturned_DateTime() { //init var isBetween = new IsBetween(); //exe var result = isBetween.Invoke(new[] { "2016/10/14", "2016/10/13", "2016/10/16" }); //assert Assert.IsTrue(result, "IsBetween returned the wrong result when comparing integers"); }
public void IsBetween_Invoke_IsToValue_FalseIsReturned() { //init var isBetween = new IsBetween(); //exe var result = isBetween.Invoke(new[] { "50", "2", "50" }); //assert Assert.IsTrue(result, "IsBetween returned the wrong result when comparing integers"); }
public void IsBetween_IsBetweenUnitTest_Invoke_IsFromValue_FalseIsReturned() { //init var comparer = new IsBetween(); //exe var actual = comparer.Invoke(new[] { "2", "2", "50" }); //assert Assert.IsTrue(actual, "IsBetween returned the wrong result when comparing integers"); }
public void IsBetween_IsBetweenUnitTest_Invoke_FalseIsReturned_DateTime() { //init var comparer = new IsBetween(); //exe var actual = comparer.Invoke(new[] { "2016/10/17", "2016/10/13", "2016/10/16" }); //assert Assert.IsFalse(actual, "IsBetween returned the wrong result when comparing integers"); }
// ReSharper disable InconsistentNaming public void IsBetween_IsBetweenUnitTest_Invoke_FalseIsReturned() // ReSharper restore InconsistentNaming { //init var comparer = new IsBetween(); //exe var actual = comparer.Invoke(new[] { "100", "2", "50" }); //assert Assert.IsFalse(actual, "IsBetween returned the wrong result when comparing integers"); }
public void IsBetween_Invoke_Type_Null_DateTime_ReturnsTrue() { //------------Setup for test-------------------------- var isBetween = new IsBetween(); var cols = new string[3]; cols[0] = null; cols[1] = null; cols[2] = null; //------------Execute Test--------------------------- var result = isBetween.Invoke(cols); //------------Assert Results------------------------- Assert.IsTrue(result); }