Exemplo n.º 1
0
        public void TestSetupPredefined()
        {
            var filterConfigForm = new FilterConfigForm();
            var predefinedFilter = new PredefinedItem
            {
                Fields = new Dictionary<FormField, string>()
            };

            foreach (var field in Enum.GetValues(typeof(FormField)).Cast<FormField>().Where(f => f != FormField.TrimMiddle))
            {
                predefinedFilter.Fields.Add(field, field.ToString().ToLower());
            }

            filterConfigForm.SetupPredefined(predefinedFilter, true);

            var expectedColorMap = FilterFactory.GetColorMap(predefinedFilter);
            var actualColorMap = filterConfigForm.HighlightColorMap;

            Assert.AreEqual(expectedColorMap.Keys.Count, actualColorMap.Keys.Count);

            foreach (var expectedKey in expectedColorMap.Keys)
            {
                Assert.AreEqual(expectedColorMap[expectedKey], actualColorMap[expectedKey], $"Key {expectedKey} differes");
            }
        }
        private static void ValidatePredfinedItemTestStrings(PredefinedFolder folder, PredefinedItem item)
        {
            Assert.IsNotNull(item.TestSuccessStrings, $"[{folder.Name}/{item.Name}] does not have TestSuccessStrings defined");
            Assert.IsTrue(item.TestSuccessStrings.Any(), $"[{item.Name}] does not have TestSuccessStrings defined");

            Assert.IsNotNull(item.TestFailStrings, $"[{folder.Name}/{item.Name}] does not have TestFailStrings defined");
            Assert.IsTrue(item.TestFailStrings.Any(), $"[{folder.Name}/{item.Name}] does not have TestFailStrings defined");
        }
        private static void TestPredefined(ILineFilter filter, TestResult testResult, PredefinedFolder folder, PredefinedItem item)
        {
            var result = filter.IsMatch(testResult.TestString);
            Assert.IsNotNull(testResult.ExpectedFilterResult, $"[{folder.Name}/{item.Name}] has not defined ExpectedFilterResult");
            Assert.AreEqual(testResult.ExpectedFilterResult.IsMatch, result.IsMatch, $"[{folder.Name}/{item.Name}] failed IsMatch for '{testResult.TestString}'");
            Assert.AreEqual(testResult.ExpectedFilterResult.HighlightColor, result.HighlightColor, $"[{folder.Name}/{item.Name}] failed HighlightColor for '{testResult.TestString}'");

            if (testResult.ExpectedFilterResult.Result != null)
            {
                Assert.AreEqual(testResult.ExpectedFilterResult.Result, result.Result, $"{folder.Name}/[{item.Name}] failed Result for '{testResult.TestString}'");
            }
        }