public string Describe(ARuleAbout <T> rule) { if (rule is AndRule <T> ) { return(DescribeAndRule(rule as AndRule <T>)); } if (rule is OrRule <T> ) { return(DescribeOrRule(rule as OrRule <T>)); } if (rule is NotRule <T> ) { return(DescribeNotRule(rule as NotRule <T>)); } if (rule is XorRule <T> ) { return(DescribeXorRule(rule as XorRule <T>)); } if (rule is ImpliesRule <T> ) { return(DescribeImpliesRule(rule as ImpliesRule <T>)); } if (rule is PreventsRule <T> ) { return(DescribePreventsRule(rule as PreventsRule <T>)); } return(DescribeRule(rule)); }
public void Setup() { aRuleThatIsTrue = ARuleAbout <AnyClass> .Where(x => true, "Always True"); aRuleThatIsFalse = ARuleAbout <AnyClass> .Where(x => false, "Always False"); describer = new VerboseRuleDescriber <AnyClass>(); }
public void Setup() { aRuleThatIsTrue = ARuleAbout <AnyClass> .Where(x => true, "Always True"); aRuleThatIsFalse = ARuleAbout <AnyClass> .Where(x => false, "Always False"); describer = new SimplifiedEvaluatingRuleDescriber <AnyClass>(new AnyClass()); }
public NotRule(ARuleAbout <T> rule) { Rule = rule; }
public void Setup() { aRuleThatIsTrue = ARuleAbout <AnyClass> .Where(x => true); aRuleThatIsFalse = ARuleAbout <AnyClass> .Where(x => false); }
public PreventsRule(ARuleAbout <T> left, ARuleAbout <T> right) { Left = left; Right = right; }
protected override string DescribeRule(ARuleAbout <T> rule) { var result = DescribeResult(rule.IsTrueFor(evaluateWith)); return(string.Format("{0}[{1}]", rule.Text, result)); }
private bool NeedsParenthesis(ARuleAbout <T> parentRule, ARuleAbout <T> childRule) { return(parentRule.GetType() != childRule.GetType() && !childRule.GetType().Name.StartsWith("ARuleAbout")); }
public void Setup() { aRuleThatIsTrue = ARuleAbout<AnyClass>.Where(x => true, "Always True"); aRuleThatIsFalse = ARuleAbout<AnyClass>.Where(x => false, "Always False"); describer = new SimplifiedEvaluatingRuleDescriber<AnyClass>(new AnyClass()); }
public void Setup() { aRuleThatIsTrue = ARuleAbout <AnyClass, AnyOtherClass> .Where((x, y) => true); aRuleThatIsFalse = ARuleAbout <AnyClass, AnyOtherClass> .Where((x, y) => false); }
public void Setup() { aRuleThatIsTrue = ARuleAbout<AnyClass>.Where(x => true, "Always True"); aRuleThatIsFalse = ARuleAbout<AnyClass>.Where(x => false, "Always False"); describer = new VerboseRuleDescriber<AnyClass>(); }
protected override string DescribeRule(ARuleAbout <T> rule) { return(rule.Text); }
public AndRule(ARuleAbout <T> left, ARuleAbout <T> right) { Left = left; Right = right; }
protected abstract string DescribeRule(ARuleAbout <T> rule);
public ImpliesRule(ARuleAbout <T> left, ARuleAbout <T> right) { Left = left; Right = right; }
public void Setup() { aRuleThatIsTrue = ARuleAbout<AnyClass>.Where(x => true); aRuleThatIsFalse = ARuleAbout<AnyClass>.Where(x => false); }
public XorRule(ARuleAbout <T1, T2> left, ARuleAbout <T1, T2> right) { Left = left; Right = right; }
public void Setup() { aRuleThatIsTrue = ARuleAbout<AnyClass, AnyOtherClass>.Where((x, y) => true); aRuleThatIsFalse = ARuleAbout<AnyClass, AnyOtherClass>.Where((x, y) => false); }