示例#1
0
        public void TestDefaultDateBasedOverride()
        {
            var config = GetConfig();

            config.WorkItemSettings.DateBasedOverrides.Add(new Config.DateBasedFieldOverrides());
            config.WorkItemSettings.DateBasedOverrides[0].FieldName    = BasicField;
            config.WorkItemSettings.DateBasedOverrides[0].DefaultValue = BasicValue;
            config.WorkItemSettings.DateBasedOverrides[0].Entries      = new List <Config.DateBasedOverrideEntry>
            {
                new Config.DateBasedOverrideEntry
                {
                    StartDate = DateTime.Now + TimeSpan.FromDays(10),
                    Value     = BasicValue2
                }
            };

            var mailManager = new MailManagerMock();
            var message     = mailManager.AddMessage(false);

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(BasicField), string.Format("Validate override for field {0} exists", BasicField));
            Assert.AreEqual(BasicValue, dictionary[BasicField], "Validate the right value was assigned as part of mnemonic resolution");
        }
示例#2
0
        public void TestCombinedOverrides()
        {
            const string aliasField    = "AliasField";
            const string mnemonicField = "MnemonicField";
            const string explicitField = "ExplicitField";

            const string aliasValue    = "AliasValue";
            const string mnemonicValue = "MnemonicValue";
            const string explicitValue = "ExplicitValue";

            var config = GetConfigWithAllOverrides(
                BasicAlias, aliasField, aliasValue, BasicMnemonic, mnemonicField, mnemonicValue);

            var message = GetMessageWithOverrides(BasicAlias, BasicMnemonic, explicitField, explicitValue);

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(mnemonicField), string.Format("Validate override for field {0} exists (mnemonic)", BasicField));
            Assert.IsTrue(dictionary.ContainsKey(explicitField), string.Format("Validate override for field {0} exists (explicit)", BasicField));
            Assert.IsTrue(dictionary.ContainsKey(aliasField), string.Format("Validate override for field {0} exists (recipient)", BasicField));
            Assert.AreEqual(mnemonicValue, dictionary[mnemonicField], "Validate the right value was assigned as part of mnemonic overrides resolution");
            Assert.AreEqual(explicitValue, dictionary[explicitField], "Validate the right value was assigned as part of explicit overrides resolution");
            Assert.AreEqual(aliasValue, dictionary[aliasField], "Validate the right value was assigned as part of recipient overrides resolution");
        }
示例#3
0
        public void TestMultiMnemonicSameLine()
        {
            var config = GetConfig();

            config.WorkItemSettings.Mnemonics.Add(
                new Config.MnemonicDefinition {
                Mnemonic = BasicMnemonic.ToUpper(), Field = BasicField, Value = BasicValue
            });

            config.WorkItemSettings.Mnemonics.Add(
                new Config.MnemonicDefinition {
                Mnemonic = BasicMnemonic2.ToUpper(), Field = BasicField2, Value = BasicValue2
            });

            var mailManager = new MailManagerMock();
            var message     = mailManager.AddMessage(false);

            message.PlainTextBody += string.Format("@@@{0} @@@{1}", BasicMnemonic.ToLower(), BasicMnemonic2.ToLower());

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(BasicField), string.Format("Validate override for field {0} exists", BasicField));
            Assert.IsTrue(dictionary.ContainsKey(BasicField2), string.Format("Validate override for field {0} exists", BasicField2));
            Assert.AreEqual(BasicValue, dictionary[BasicField], "Validate the right value was assigned as part of mnemonic resolution");
            Assert.AreEqual(BasicValue2, dictionary[BasicField2], "Validate the right value was assigned as part of mnemonic resolution");
        }
示例#4
0
        public void TestSimpleExplicitOverride()
        {
            var config = GetConfig();

            var mailManager = new MailManagerMock();
            var message     = mailManager.AddMessage(false);

            message.PlainTextBody += string.Format("###{0}:{1}", BasicField, BasicValue);

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(BasicField), string.Format("Validate override for field {0} exists", BasicField));
            Assert.AreEqual(BasicValue, dictionary[BasicField], "Validate the right value was assigned as part of explicit overrides resolution");
        }
示例#5
0
        public void TestOverridesPrecedenceMnemonicTrumps()
        {
            const string aliasValue    = "AliasValue";
            const string mnemonicValue = "MnemonicValue";

            var config = GetConfigWithAllOverrides(
                BasicAlias, BasicField, aliasValue, BasicMnemonic, BasicField, mnemonicValue);

            var message = GetMessageWithOverrides(BasicAlias, BasicMnemonic, null, null);

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(BasicField), string.Format("Validate override for field {0} exists (mnemonic)", BasicField));
            Assert.AreEqual(mnemonicValue, dictionary[BasicField], "Validate the right value was assigned as part of explicit overrides resolution");
        }
示例#6
0
        public void TestSimpleRecipientOverride()
        {
            var config = GetConfig();

            config.WorkItemSettings.RecipientOverrides.Add(
                new Config.RecipientOverrideDefinition {
                Alias = BasicAlias.ToUpper(), Field = BasicField, Value = BasicValue
            });

            var mailManager = new MailManagerMock();
            var message     = mailManager.AddMessage(false);

            // Add the alias that will be resolved
            var newTo = message.To.ToList();

            newTo.Add(BasicAlias.ToLower());
            message.To = newTo;

            var extractor  = new OverridesExtractor(message, config);
            var dictionary = extractor.GetOverrides();

            Assert.IsTrue(dictionary.ContainsKey(BasicField), string.Format("Validate override for field {0} exists", BasicField));
            Assert.AreEqual(BasicValue, dictionary[BasicField], "Validate the right value was assigned as part of recipient overrides resolution");
        }