Exemplo n.º 1
0
        public void TestValidateListContainsChildElementNotFound()
        {
            var element     = new BaseElement();
            var listElement = new BaseElement();
            var validation  = ItemValidationHelper.Create("MyProperty", "My Data");
            var validations = new List <ItemValidation> {
                validation
            };

            var propData = new Mock <IPropertyData>();
            var page     = new Mock <IPage>(MockBehavior.Strict);

            // ReSharper disable once RedundantAssignment
            var property = propData.Object;

            page.Setup(p => p.TryGetProperty("MyProperty", out property)).Returns(false);

            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.Setup(p => p.GetPageFromElement(listElement)).Returns(page.Object);

            var propertyData = CreatePropertyData(pageBase, element, (p, f) => f(new List <BaseElement> {
                listElement
            }));

            var result = propertyData.ValidateList(ComparisonType.Contains, validations);

            Assert.IsFalse(result.IsValid);

            pageBase.VerifyAll();
            page.VerifyAll();
            propData.VerifyAll();
        }
Exemplo n.º 2
0
        public void TestGetComparisonTableByRuleWhenMultipleResultsThrowsException()
        {
            var validations = new[] { ItemValidationHelper.Create("MyField", "Something") };

            var validationResult = new ValidationResult(validations);

            validationResult.CheckedItems.Add(new ValidationItemResult());
            validationResult.CheckedItems.Add(new ValidationItemResult());

            validationResult.GetComparisonTableByRule();
        }
Exemplo n.º 3
0
        public void TestValidateItem()
        {
            var element = new BaseElement();

            var pageBase     = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);
            var propertyData = CreatePropertyData(pageBase, element);

            string actualValue;
            var    result = propertyData.ValidateItem(ItemValidationHelper.Create("MyProperty", typeof(BaseElement).FullName), out actualValue);

            Assert.IsTrue(result);

            pageBase.VerifyAll();
        }
Exemplo n.º 4
0
        public void TestValidateItemAsEnumerableProperty()
        {
            var element = new List <string> {
                "My Data", "Other Item"
            };

            var pageBase     = new Mock <IPageElementHandler <List <string> > >(MockBehavior.Strict);
            var propertyData = CreatePropertyData(pageBase, element);

            string actualValue;
            var    result = propertyData.ValidateItem(ItemValidationHelper.Create("MyProperty", "My Data"), out actualValue);

            Assert.IsTrue(result);

            pageBase.VerifyAll();
        }
Exemplo n.º 5
0
        public void TestValidateItemWhereElementDoesNotExist()
        {
            var element  = new BaseElement();
            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.SetupGet(p => p.PageType).Returns(typeof(TestBase));
            pageBase.Setup(p => p.ElementExistsCheck(element)).Returns(false);

            var propertyData = CreatePropertyData(pageBase, element);

            string actualValue;

            ExceptionHelper.SetupForException <ElementExecuteException>(
                () => propertyData.ValidateItem(ItemValidationHelper.Create("MyField", "My Data"), out actualValue),
                e => pageBase.VerifyAll());
        }
Exemplo n.º 6
0
        public void TestValidateItem()
        {
            var element = new BaseElement();

            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.Setup(p => p.GetElementAttributeValue(element, "href")).Returns("http://mypage.com/page");

            var propertyData = CreatePropertyData(pageBase, element);

            string actualValue;
            var    result = propertyData.ValidateItem(ItemValidationHelper.Create("MyProperty", "http://mypage.com/page"), out actualValue);

            Assert.IsTrue(result);
            Assert.IsNotNull(actualValue);

            pageBase.VerifyAll();
        }
Exemplo n.º 7
0
        public void TestValidateItemAsElement()
        {
            var element = new BaseElement();

            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.Setup(p => p.ElementExistsCheck(element)).Returns(true);
            pageBase.Setup(p => p.GetElementText(element)).Returns("My Data");

            var propertyData = CreatePropertyData(pageBase, element);

            string actualValue;
            var    result = propertyData.ValidateItem(ItemValidationHelper.Create("MyProperty", "My Data"), out actualValue);

            Assert.IsTrue(result);

            pageBase.VerifyAll();
        }
Exemplo n.º 8
0
        public void TestValidateItemWhereElementDoesNotExistAndCheckIsDisabled()
        {
            var element  = new BaseElement();
            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.Setup(p => p.ElementExistsCheck(element)).Returns(false);

            var propertyData = CreatePropertyData(pageBase, element);

            var validation = ItemValidationHelper.Create("MyProperty", "false", new ExistsComparer());

            string actualValue;
            var    result = propertyData.ValidateItem(validation, out actualValue);

            Assert.IsTrue(result);

            pageBase.VerifyAll();
        }
Exemplo n.º 9
0
        public void TestGetComparisonTableByRuleWithMissingField()
        {
            var validation       = ItemValidationHelper.Create("MyField", "Something");
            var validationResult = new ValidationResult(new[] { validation });

            var itemResult = new ValidationItemResult();

            itemResult.NoteMissingProperty(validation);

            validationResult.CheckedItems.Add(itemResult);

            var result = validationResult.GetComparisonTableByRule();

            var expectedTable = new StringBuilder()
                                .AppendLine("| Field               | Rule   | Value     |")
                                .Append("| MyField [Not Found] | equals | Something |");

            Assert.AreEqual(expectedTable.ToString(), result);
        }
Exemplo n.º 10
0
        public void TestGetComparisonTableWithInvalidNullFields()
        {
            var validation       = ItemValidationHelper.Create("MyField", "Something");
            var validationResult = new ValidationResult(new[] { validation });

            var itemResult = new ValidationItemResult();

            itemResult.NoteValidationResult(validation, false, null);

            validationResult.CheckedItems.Add(itemResult);

            var result = validationResult.GetComparisonTable();

            var expectedTable = new StringBuilder()
                                .AppendLine("| MyField equals Something |")
                                .Append("| <EMPTY>                  |");

            Assert.AreEqual(expectedTable.ToString(), result);
        }
Exemplo n.º 11
0
        public void TestValidateListInvalidComparison()
        {
            var element     = new BaseElement();
            var listElement = new BaseElement();
            var validation  = ItemValidationHelper.Create("MyProperty", "My Data");
            var validations = new List <ItemValidation> {
                validation
            };

            var pageBase     = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);
            var propertyData = CreatePropertyData(pageBase, element, (p, f) => f(new List <BaseElement> {
                listElement
            }));

            var result = propertyData.ValidateList(ComparisonType.Enabled, validations);

            Assert.IsFalse(result.IsValid);

            pageBase.VerifyAll();
        }
Exemplo n.º 12
0
        public void TestValidateItemAsList()
        {
            var element       = new BaseElement();
            var parentElement = new BaseElement();

            var listMock = new Mock <IElementList <BaseElement, BaseElement> >(MockBehavior.Strict);

            listMock.SetupGet(l => l.Parent).Returns(parentElement);

            var pageBase = new Mock <IPageElementHandler <BaseElement> >(MockBehavior.Strict);

            pageBase.Setup(p => p.GetElementText(parentElement)).Returns("My Data");

            var propertyData = CreatePropertyData(pageBase, element, (p, f) => f(listMock.Object));

            string actualValue;
            var    result = propertyData.ValidateItem(ItemValidationHelper.Create("MyProperty", "My Data"), out actualValue);

            Assert.IsTrue(result);

            pageBase.VerifyAll();
            listMock.VerifyAll();
        }