public SingleRuleSelector(IItemSkippingRule skippingRule) { _skippingRule = skippingRule; }
private bool CheckSkip(TestAssessmentRuleCollection assessmentRuleCollection, IItemSkippingRule rule, ItemInstance itemInstance) { var ruleEngine = new RuleEngine <AssessmentInstance>(assessmentRuleCollection, new RuleProcessor()); var assessmentInstance = Substitute.For <AssessmentInstance>(); var ruleEngineContext = new RuleEngineContext <AssessmentInstance>( assessmentInstance, new SingleRuleSelector(rule)); var skippingContext = new SkippingContext(); ruleEngineContext .WorkingMemory .AddContextObject(itemInstance, itemInstance.ItemDefinitionCode); ruleEngineContext.WorkingMemory.AddContextObject(skippingContext); ruleEngine.ExecuteRules(ruleEngineContext); return(skippingContext.SkippedItemDefinitions.Any( )); }