Пример #1
0
        public void TRuleSettings()
        {
            var testClass = new TRuleSettings
            {
                Title  = "Test",
                Active = true,
                RuleID = 1
            };

            testClass.Conditions.Items.Add(new TRuleSomeWordsCondition
            {
                ConditionType = TRuleConditionType.CustomHeader,
                OperatorAnd   = true,
                MatchFunction = TRuleSomeWordsFunctionType.Regex,
                MatchValue    = "X-Priority: 2"
            });
            testClass.Actions.Items.Add(new TRuleMessageActionAction
            {
                Actiontype        = TRuleActionType.MessageAction,
                MessageActionType = TRuleMessageActionType.Reject
            });
            testClass.Actions.Items.Add(new TRulePriorityAction
            {
                Actiontype = TRuleActionType.Priority,
                Priority   = TRulePriorityType.Highest
            });

            var testXml = ToFormattedXml(testClass);

            Assert.AreEqual(_xml, testXml);
        }
Пример #2
0
        public void TRuleSettings_BuildXmlElement()
        {
            var testClass = new TRuleSettings(GetXmlNode(_xml));

            Assert.AreEqual("Test", testClass.Title);
            Assert.True(testClass.Active);
            Assert.AreEqual(1, testClass.RuleID);

            Assert.AreEqual(1, testClass.Conditions.Items.Count);
            Assert.AreEqual(typeof(TRuleSomeWordsCondition), testClass.Conditions.Items.First().GetType());
            Assert.AreEqual(TRuleConditionType.CustomHeader, testClass.Conditions.Items.First().ConditionType);
            Assert.True(testClass.Conditions.Items.First().OperatorAnd);
            Assert.AreEqual(TRuleSomeWordsFunctionType.Regex, ((TRuleSomeWordsCondition)testClass.Conditions.Items.First()).MatchFunction);
            Assert.AreEqual("X-Priority: 2", ((TRuleSomeWordsCondition)testClass.Conditions.Items.First()).MatchValue);

            Assert.AreEqual(2, testClass.Actions.Items.Count);
            Assert.AreEqual(typeof(TRuleMessageActionAction), testClass.Actions.Items.First().GetType());
            Assert.AreEqual(TRuleActionType.MessageAction, testClass.Actions.Items.First().Actiontype);

            Assert.AreEqual(typeof(TRulePriorityAction), testClass.Actions.Items.Last().GetType());
            Assert.AreEqual(TRuleActionType.Priority, testClass.Actions.Items.Last().Actiontype);
        }