public void Will_Generate_Xpath_For_Simple_Element_With_Partial_Attribute_Defined_By_Variables3() { string attrName = "id"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Attribute(attrName).Contains("displayNone")); Assert.AreEqual("//td[contains(@id,'displayNone')]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Starting_With_Text_Represented_By_Variable() { string test = "Test"; var xpath = CreateXpath.Where(e => e.TargetElementName == "span" && e.TargetElementText.StartsWith(test)); Assert.AreEqual("//span[starts-with(text(),'Test')]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Not_Containing_Text() { string tdElement = "td"; var xpath = CreateXpath.Where(e => e.TargetElementName == tdElement && e.TargetElementText.Contains("my test") == false); Assert.AreEqual("//td[not(contains(text(),'my test'))]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Specified_By_A_Variable() { string tdElement = "td"; var xpath = CreateXpath.Where(e => e.TargetElementName == tdElement); Assert.AreEqual("//td", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Text() { string tdElement = "td"; var xpath = CreateXpath.Where(e => e.TargetElementName == tdElement && e.TargetElementText == "my test"); Assert.AreEqual("//td[text()='my test']", xpath); }
public void Will_Return_Text_At_Property_From_Method() { int index = GetTextIndex(); var xpath = CreateXpath.Where(e => e.TargetElementName == "td").Select(e => e.TextAt(index)); Assert.AreEqual("//td/text()[4]", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_Specified_Using_Variable() { string parent = "tr"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == parent); Assert.AreEqual("//tr/td", xpath); }
public void Will_Return_Attribute_Property2() { string classAttr = "class"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td").Select(e => e.Attribute(classAttr)); Assert.AreEqual("//td/@class", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Contained_Text() { string text = "myTest"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.Contains(text)); Assert.AreEqual("//tr[contains(text(),'myTest')]/td", xpath); }
public void Will_Return_Text_At_Property_From_Variable() { int index = 100; var xpath = CreateXpath.Where(e => e.TargetElementName == "td").Select(e => e.TextAt(index)); Assert.AreEqual("//td/text()[100]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Position_Specified_By_Variable() { int position = 5; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Position == position); Assert.AreEqual("//td[position()=5]", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Attribute_With_Exact_Text_All_Specified_Using_Attributes() { string text = "_parent_child"; string parentName = "tr"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == parentName && e.Parent.Attribute("id").Text == text); Assert.AreEqual("//tr[@id='_parent_child']/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Ancestor_Specified_Using_Variables() { string td = "td"; string table = "table"; var xpath = CreateXpath.Where(e => e.TargetElementName == td && e.Ancestor.Name == table); Assert.AreEqual("//td[ancestor::table]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Following_Sibling_Specified_By_Attributes() { string siblingName = "td2"; string elementName = "td1"; var xpath = CreateXpath.Where(e => e.TargetElementName == elementName && e.FollowingSibling.Name == siblingName); Assert.AreEqual("//td1[following-sibling::td2]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Attributes_Defined_By_Variables() { string myClass1 = "displayNone"; string attrName = "class"; var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Attribute(attrName).Text == myClass1); Assert.AreEqual("//td[@class='displayNone']", xpath); }
public void Will_Generate_Xpath_For_Element_With_Ancestor_And_Descendant_Specified_By_Variables() { string desc = "div"; string ancestor = "table"; string target = "td"; var xpath = CreateXpath.Where(e => e.TargetElementName == target && e.Ancestor.Name == ancestor && e.Descendant.Name == desc); Assert.AreEqual("//td[descendant::div and ancestor::table]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Specified_By_A_Variable_Inside_Another_Object() { TestClass testClass = new TestClass(); testClass.Name = "tr"; var xpath = CreateXpath.Where(e => e.TargetElementName == testClass.Name); Assert.AreEqual("//tr", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_Ending_With_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.EndsWith("test") == true); Assert.AreEqual("//tr[ends-with(text(),'test')]/td", xpath); xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.EndsWith("test")); Assert.AreEqual("//tr[ends-with(text(),'test')]/td", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Preceding_Sibling_And_Following_Sibling_And_Attribute_Using_Variables() { string aVal = "a"; string bVal = "b"; string cVal = "c"; string classVal = "class"; var xpath = CreateXpath.Where(e => e.TargetElementName == bVal && e.PrecedingSibling.Name == aVal && e.FollowingSibling.Name == cVal && e.Attribute("class").Text == GetClassName()); Assert.AreEqual("//b[@class='myClass' and following-sibling::c and preceding-sibling::a]", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Specified_By_A_Variable_Inside_Deep_Object() { TestClass2 outer = new TestClass2(); outer.Test = new TestClass() { Name = "a" }; var xpath = CreateXpath.Where(e => e.TargetElementName == outer.Test.Name); Assert.AreEqual("//a", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_Specified_By_Value_Returned_From_Instance_Method_Call() { TestClass2 outer = new TestClass2(); outer.Test = new TestClass() { Name = "a" }; var xpath = CreateXpath.Where(e => e.TargetElementName == GetValue2("table")); Assert.AreEqual("//table", xpath); xpath = CreateXpath.Where(e => e.TargetElementName == GetValue2()); Assert.AreEqual("//table", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Text_And_Position_And_Attribute() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text == "test" && e.Parent.Position == 5 && e.Parent.Attribute("id").Text == "parent"); Assert.AreEqual("//tr[@id='parent' and text()='test' and position()=5]/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_Not_Starting_With_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.StartsWith("test") == false); Assert.AreEqual("//tr[not(starts-with(text(),'test'))]/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text == "test"); Assert.AreEqual("//tr[text()='test']/td", xpath); }
public void Will_Generate_Xpath_For_Element_Where_Both_Parent_And_Element_Start_With_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.StartsWith("parentText") && e.TargetElementText.StartsWith("childText")); Assert.AreEqual("//tr[starts-with(text(),'parentText')]/td[starts-with(text(),'childText')]", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_Defined_First_In_Expression() { var xpath = CreateXpath.Where(e => e.Parent.Name == "tr" && e.TargetElementName == "td"); Assert.AreEqual("//tr/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Multiple_Attributes_Containing_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Attribute("id").Contains("_parent_child") && e.Parent.Attribute("class").Contains("someClass")); Assert.AreEqual("//tr[contains(@class,'someClass') and contains(@id,'_parent_child')]/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_With_Multiple_Attributes_With_Exact_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Attribute("id").Text == "_parent_child" && e.Parent.Attribute("class").Text == "myClass"); Assert.AreEqual("//tr[@class='myClass' and @id='_parent_child']/td", xpath); }
public void Will_Generate_Xpath_For_Element_With_Parent_Not_Containing_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Parent.Name == "tr" && e.Parent.Text.Contains("_parent_child") == false); Assert.AreEqual("//tr[not(contains(text(),'_parent_child'))]/td", xpath); }
public void Will_Generate_Xpath_For_Simple_Element_With_Parent_With_One_Attribute_Containing_Text_And_Another_Attribute_With_Exact_Text() { var xpath = CreateXpath.Where(e => e.TargetElementName == "td" && e.Attribute("id").Contains("_parent_child") && e.Attribute("class").Text == "myClass"); Assert.AreEqual("//td[@class='myClass' and contains(@id,'_parent_child')]", xpath); }