Пример #1
0
        public void GetBuildRules()
        {
            var xml =
                @"<configuration>
    <build
      group=""test""
      mask=""some valid regex""
      projectCode=""BENDER""
      remainingDays=""2"">

        <notify subject=""test"" mailTo=""admin""/>
    </build>
</configuration>";

            var config = new XmlRulesConfig(XDocument.Parse(xml), new Mock <ILogger>().Object);

            var rule = config.GetBuildRules("test").Single();

            Assert.IsFalse(rule.ExpiredOnly);
            Assert.AreEqual(string.Join(",", rule.HowToNotify !.MetaAddressers), string.Join(",", new[] { "admin" }));
            Assert.AreEqual(rule.HowToNotify.Subject, "test");
            Assert.AreEqual(rule.ProjectCode, "BENDER");
        }
Пример #2
0
        public void CheckExceptionHandler()
        {
            // Required field 'mask' is absent
            var xml =
                @"<configuration>
    <build
      group=""test""
      maskER=""some valid regex""
      projectCode=""BENDER""
      remainingDays=""2"">

        <notify subject=""test"" mailTo=""admin""/>
    </build>
</configuration>";

            var logger = new Mock <ILogger>();
            //logger.Setup(l => l.Error(It.IsAny<Exception>()));


            var config = new XmlRulesConfig(XDocument.Parse(xml), logger.Object);

            Assert.IsFalse(config.GetBuildRules("test").Any());
            logger.Verify(l => l.Error(It.IsNotNull <Exception>(), It.IsAny <string>()), Times.Once());
        }