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(); }
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(); }
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(); }
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(); }
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()); }
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(); }
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(); }
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(); }
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); }
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); }
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(); }
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(); }