public async override Task <bool> Passes() { var result = false; switch (Operator) { case CommonCore.Models.Enums.ComparisonOperatorEnum.LessThan: case CommonCore.Models.Enums.ComparisonOperatorEnum.LessThanOrEqualTo: case CommonCore.Models.Enums.ComparisonOperatorEnum.GreaterThanOrEqualTo: case CommonCore.Models.Enums.ComparisonOperatorEnum.GreaterThan: throw new System.Exception(NonApplicableOperatorMessage); case CommonCore.Models.Enums.ComparisonOperatorEnum.EqualTo: result = OwnValue == ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.NotEqualTo: result = OwnValue != ComparisonValue; break; default: result = OwnValue == ComparisonValue; break; } return(result && await RuleTree.PassesAnd(Children)); }
public async override Task <bool> Passes() { bool result = false; if (ComparisonValue is T2 comparisonValue) { switch (Operator) { case ComparisonOperatorEnum.LessThan: result = OwnValue.IsLessThan <T2>(comparisonValue); break; case ComparisonOperatorEnum.LessThanOrEqualTo: result = OwnValue.IsLessThanOrEqualTo <T2>(comparisonValue); break; case ComparisonOperatorEnum.EqualTo: result = OwnValue.IsEqualTo <T2>(comparisonValue); break; case ComparisonOperatorEnum.GreaterThanOrEqualTo: result = OwnValue.IsGreaterThanOrEqualTo <T2>(comparisonValue); break; case ComparisonOperatorEnum.GreaterThan: result = OwnValue.IsGreaterThan <T2>(comparisonValue); break; case ComparisonOperatorEnum.NotEqualTo: result = OwnValue.IsNotEqualTo <T2>(comparisonValue); break; default: result = OwnValue.IsEqualTo <T2>(comparisonValue); break; } } return(result && await RuleTree.PassesAnd(Children)); }
public async override Task <bool> Passes() { var result = false; switch (Operator) { case CommonCore.Models.Enums.ComparisonOperatorEnum.LessThan: result = OwnValue < ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.LessThanOrEqualTo: result = OwnValue >= ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.EqualTo: result = OwnValue == ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.GreaterThanOrEqualTo: result = OwnValue >= ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.GreaterThan: result = OwnValue >= ComparisonValue; break; case CommonCore.Models.Enums.ComparisonOperatorEnum.NotEqualTo: result = OwnValue != ComparisonValue; break; default: result = OwnValue == ComparisonValue; break; } return(result && await RuleTree.PassesAnd(Children)); }
public async Task PassesAnd_TwoStringComparsionValues_True() { var result = await RuleTree.PassesAnd(RuleTreeMockData.AndRuleTwoStringComparisonRules_BothMatch.BaseNode.Children); Assert.True(result); }
public async Task PassesAnd_NoChildren_True() { var result = await RuleTree.PassesAnd <IRuleNode>(RuleTreeMockData.AndRuleNoChildren.Children); Assert.True(result); }