Ejemplo n.º 1
0
        public void Should_compile_and_execute()
        {
            _result = null;

            RulesEngine rulesEngine = RulesEngineFactory.New(x => { x.Add(_rule); });

            using (StatefulSession session = rulesEngine.CreateSession())
            {
                session.Add(new Order {Name = "JOE", Amount = 10001.0m});
                session.Run();
            }

            var visitor = new TextRuntimeModelVisitor();
            rulesEngine.Accept(visitor);

            Console.WriteLine(visitor);

            Assert.IsNotNull(_result);
            Assert.IsNotNull(_resultB);
        }
Ejemplo n.º 2
0
        public void Should_not_activate_for_only_other_side()
        {
            _result = null;

            RulesEngine rulesEngine = RulesEngineFactory.New(x => { x.Add(_rule); });

            using (StatefulSession session = rulesEngine.CreateSession())
            {
                session.Add(new Order {
                    Name = "MAMA", Amount = 10001.0m
                });
                session.Run();
            }

            var visitor = new TextRuntimeModelVisitor();

            rulesEngine.Accept(visitor);

            Console.WriteLine(visitor);

            Assert.IsNull(_result);
        }
Ejemplo n.º 3
0
        public void Should_compile_and_execute()
        {
            _result = null;

            RulesEngine rulesEngine = RulesEngineFactory.New(x => { x.Add(_rule); });

            using (StatefulSession session = rulesEngine.CreateSession())
            {
                session.Add(new Order {
                    Name = "JOE", Amount = 10001.0m
                });
                session.Run();
            }

            var visitor = new TextRuntimeModelVisitor();

            rulesEngine.Accept(visitor);

            Console.WriteLine(visitor);

            Assert.IsNotNull(_result);
            Assert.IsNotNull(_resultB);
        }
Ejemplo n.º 4
0
        public void Should_not_activate_for_only_other_side()
        {
            _result = null;

            RulesEngine rulesEngine = RulesEngineFactory.New(x => { x.Add(_rule); });

            using (StatefulSession session = rulesEngine.CreateSession())
            {
                session.Add(new Order {Name = "MAMA", Amount = 10001.0m});
                session.Run();
            }

            var visitor = new TextRuntimeModelVisitor();
            rulesEngine.Accept(visitor);

            Console.WriteLine(visitor);

            Assert.IsNull(_result);
        }