Пример #1
0
        public void Dictionary_IntIndex()
        {
            var objDict = new DictTest <int> {
                Dict = new Dictionary <int, int>()
            };

            objDict.Dict.Add(111, 1234);

            Rule rule = Rule.Create("Dict[111]", mreOperator.Equal, 1234);

            MRE  engine       = new MRE();
            var  compiledRule = engine.CompileRule <DictTest <int> >(rule);
            bool passes       = compiledRule(objDict);

            Assert.IsTrue(passes);

            objDict.Dict[111] = 2345;
            passes            = compiledRule(objDict);
            Assert.IsFalse(passes);
        }
Пример #2
0
        public void Dictionary_StringIndex()
        {
            var objDict = new DictTest <string> {
                Dict = new Dictionary <string, int>()
            };

            objDict.Dict.Add("Key", 1234);

            Rule rule = Rule.Create("Dict['Key']", mreOperator.Equal, 1234);

            MRE  engine       = new MRE();
            var  compiledRule = engine.CompileRule <DictTest <string> >(rule);
            bool passes       = compiledRule(objDict);

            Assert.IsTrue(passes);

            objDict.Dict["Key"] = 2345;
            passes = compiledRule(objDict);
            Assert.IsFalse(passes);
        }