示例#1
0
        public void ByPartialHref_Many_Matches()
        {
            SetUp();

            var pageLinks = Driver.FindElements(ByExtension.PartialHref("page"));

            Assert.AreEqual(4, pageLinks.Count);
        }
        public void ByPartialTextAndTag_Matching_Text_But_Not_Tag()
        {
            SetUp();

            var resultList = Driver.FindElements(ByExtension.PartialTextAndTag("Page", "span"));

            Assert.AreEqual(0, resultList.Count);
        }
示例#3
0
        public void ByText_Many_Matches()
        {
            SetUp();

            var resultList = Driver.FindElements(ByExtension.Text("List item"));

            Assert.AreEqual(8, resultList.Count);
        }
        public void ByPartialTextAndTag_Partial_Match_Multiple_Results()
        {
            SetUp();

            var resultList1 = Driver.FindElements(ByExtension.PartialTextAndTag("Page", "a", "li"));

            Assert.AreEqual(8, resultList1.Count);
        }
        public void ByTextAndTag_Unfound_Text()
        {
            SetUp();

            var foundElements = Driver.FindElements(ByExtension.TextAndTag("Page 1", "p"));

            Assert.AreEqual(0, foundElements.Count);
        }
        public void ByPartialTextAndTag_Single_Full_Match()
        {
            SetUp();
            var expectedElement = Driver.FindElement(By.LinkText("Page 1"));

            var resultElement = Driver.FindElement(ByExtension.PartialTextAndTag("Page 1", "a"));

            Assert.AreEqual(expectedElement, resultElement);
        }
        public void ByPartialText_Ancestors_Are_In_List()
        {
            SetUp();

            var resultList = Driver.FindElements(ByExtension.PartialText("2018"));

            Assert.AreEqual(5, resultList.Count);
            Assert.AreEqual(resultList[1].TagName, "small");
        }
示例#8
0
        public void ByParent_Simple_Crossbrowser(string driver)
        {
            SetUp(driver);

            var expectedElement = Driver.FindElement(By.TagName("ul"));
            var resultElement   = Driver.FindElement(ByExtension.ParentOf(By.Id("navP1")));

            Assert.AreEqual(expectedElement, resultElement);
        }
        public void ByPartialText_Single_Occurence_Full_Match()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.TagName("time"));
            var resultElement   = Driver.FindElement(ByExtension.PartialText("2018"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#10
0
        public void ByText_Simple_Crossbrowser(string driver)
        {
            SetUp(driver);

            var expectedElement = Driver.FindElement(By.Id("secondH2"));
            var resultElement   = Driver.FindElement(ByExtension.Text("sub-heading"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#11
0
        public void ByPartialHref_One_Match()
        {
            SetUp();

            var page1Link     = Driver.FindElement(By.LinkText("Page 2"));
            var resultElement = Driver.FindElement(ByExtension.PartialHref("/test/page2"));

            Assert.AreEqual(page1Link, resultElement);
        }
示例#12
0
        public void ByLabel_Embedded_Label_Text()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("embedded_input"));
            var resultElement   = Driver.FindElement(ByExtension.Label("label for embedded input"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#13
0
        public void ByLabel_Simple_Label_By_Crossbrowser(string driver)
        {
            SetUp(driver);

            var expectedElement = Driver.FindElement(By.Id("next_input"));
            var resultElement   = Driver.FindElement(ByExtension.Label(By.Id("for_next_input")));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#14
0
        public void ByPartialHref_Entire_Href()
        {
            SetUp();

            var page1Link     = Driver.FindElement(By.LinkText("Page 1"));
            var resultElement = Driver.FindElement(ByExtension.PartialHref("https://dmdiehr.github.io/test/page1"));

            Assert.AreEqual(page1Link, resultElement);
        }
        public void ByPartialText_Single_Occurence_Middle_Word()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.CssSelector("footer div"));
            var resultElement   = Driver.FindElement(ByExtension.PartialText("footer"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#16
0
        internal ByLabel(string labelText)
        {
            if (string.IsNullOrEmpty(labelText))
            {
                throw new ArgumentException("The text to find cannot be null or empty", "textToFind");
            }

            LabelBy = ByExtension.TextAndTag(labelText, "label");
        }
示例#17
0
        public void ByText_One_Of_Many()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("firstLi"));
            var resultElement   = Driver.FindElement(ByExtension.Text("List item"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#18
0
        public void ByLabel_Simple_Label_Text()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("next_input"));
            var resultElement   = Driver.FindElement(ByExtension.Label("label for next input"));

            Assert.AreEqual(expectedElement, resultElement);
        }
        public void ByTextAndTag_Simple()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.LinkText("Page 1"));

            var resultElement = Driver.FindElement(ByExtension.TextAndTag("Page 1", "a"));

            Assert.AreEqual(expectedElement, resultElement);
        }
        public void ByTextAndTag_Multiple_Matching_Tags()
        {
            SetUp();
            var aTag  = Driver.FindElement(By.LinkText("Page 3"));
            var liTag = Driver.FindElement(By.Id("navP3"));

            var resultList = Driver.FindElements(ByExtension.TextAndTag("Page 3", "a", "li"));

            Assert.AreEqual(2, resultList.Count);
        }
        public void ByAttributeValue_Element_With_One_Attribute()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("div4"));

            var resultElement = Driver.FindElement(ByExtension.AttributeValue("foobar", "foobar attribute"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#22
0
        public void ByAttributeName_One_Match()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("div2"));

            var resultElement = Driver.FindElement(ByExtension.AttributeName("data-tip"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#23
0
        public void ByAttributeName_Weird_Attribute()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("div4"));

            var resultElement = Driver.FindElement(ByExtension.AttributeName("foobar"));

            Assert.AreEqual(expectedElement, resultElement);
        }
示例#24
0
        public void ByText_Returns_Innermost_Element()
        {
            SetUp();

            var bothElements = Driver.FindElements(ByExtension.Text("Page 1"));
            var oneElement   = Driver.FindElement(ByExtension.Text("Page 1"));

            Assert.AreEqual(2, bothElements.Count);
            Assert.AreEqual("a", oneElement.TagName);
        }
        public void ByTextAndTag_Parent_Element()
        {
            SetUp();

            var expectedElement = Driver.FindElement(By.Id("navP4"));

            var resultElement = Driver.FindElement(ByExtension.TextAndTag("Page 4", "li"));

            Assert.AreEqual(expectedElement, resultElement);
        }
        public void ByPartialTextAndTag_No_Matching_Tag()
        {
            SetUp();

            //This is checking to make sure the test is valid, in case the test site gets updated to include a td element.
            Assert.AreEqual(0, Driver.FindElements(By.TagName("td")).Count);

            var resultList = Driver.FindElements(ByExtension.PartialTextAndTag("Page", "td"));

            Assert.AreEqual(0, resultList.Count);
        }
示例#27
0
        public void ByChildrenOf_Simple_Crossbrowser(string driver)
        {
            SetUp(driver);

            var parentElement = Driver.FindElement(By.TagName("ol"));
            var secondChild   = parentElement.FindElement(By.XPath("./li[2]"));

            var resultChild = Driver.FindElement(ByExtension.ChildrenOf(By.TagName("ol"), 1));

            Assert.AreEqual(secondChild, resultChild);
        }
        public void ByAttributeValue_Multiple_Matches()
        {
            SetUp();

            var expectedList = Driver.FindElements(By.CssSelector("ol li"));

            var resultList = Driver.FindElements(ByExtension.AttributeValue("dir", "rtl"));

            Assert.AreEqual(4, resultList.Count);
            Assert.AreEqual(expectedList, resultList);
        }
        public void ByChildrenOf_Simple_Crossbrowser(string driver)
        {
            SetUp(driver);

            var olList = Driver.FindElements(By.CssSelector("ol li"));

            Assert.AreEqual(4, olList.Count);

            var resultList = Driver.FindElements(ByExtension.ChildrenOf(By.TagName("ol")));

            Assert.AreEqual(olList, resultList);
        }
示例#30
0
        public void ByText_Case_Sensitivity_Simple()
        {
            SetUp();

            var caseSentsitiveList = Driver.FindElements(ByExtension.Text("list item", StringComparison.InvariantCulture));

            Assert.AreEqual(0, caseSentsitiveList.Count);

            var caseInsentsitiveList = Driver.FindElements(ByExtension.Text("list item", StringComparison.InvariantCultureIgnoreCase));

            Assert.AreEqual(8, caseInsentsitiveList.Count);
        }