Beispiel #1
0
        /// <summary>
        /// Finds all elements that satisfy the condition of css selector.
        /// </summary>
        /// <param name="selector"></param>
        /// <param name="tmpSelectMethod"> This select method is used only for selection of elements in this query. Not in the future.</param>
        /// <returns></returns>
        public new virtual IElementWrapperCollection <IElementWrapperFluentApi, IBrowserWrapperFluentApi> FindElements(string selector, Func <string, By> tmpSelectMethod = null)
        {
            var collection = WebElement.FindElements((tmpSelectMethod ?? SelectMethod)(selector)).ToElementsList <IElementWrapperFluentApi, IBrowserWrapperFluentApi>((IBrowserWrapperFluentApi)browser, selector, this, browser.ServiceFactory);

            collection.ParentWrapper = this;
            return(collection);
        }
Beispiel #2
0
        /// <summary>
        /// Finds all elements that satisfy the condition of css selector.
        /// </summary>
        /// <param name="selector"></param>
        /// <param name="tmpSelectMethod"> This select method is used only for selection of elements in this query. Not in the future.</param>
        /// <returns></returns>
        public virtual ElementWrapperCollection FindElements(string selector, Func <string, By> tmpSelectMethod = null)
        {
            var collection = WebElement.FindElements((tmpSelectMethod ?? SelectMethod)(selector)).ToElementsList(browser, selector, this);

            collection.ParentWrapper = this;
            return(collection);
        }
Beispiel #3
0
        public string ReadValue(int index)
        {
            var element = WebElement.FindElements(By.TagName("option"))[index];

            return(element.GetValueAttribute());

            // TODO: VC: Move getting common attributes into some element base
        }
Beispiel #4
0
 public IEnumerable <IGenericControl> Find(string cssSelector)
 {
     EnsureElementExists();
     foreach (var element in WebElement.FindElements(By.CssSelector(cssSelector)))
     {
         yield return(new GenericControl(element, WebBrowser));
     }
 }
Beispiel #5
0
        public string ReadSelectedValue()
        {
            var element = WebElement.FindElements(By.TagName("option")).SingleOrDefault(e => e.Selected);

            if (element == null)
            {
                return(null);
            }

            return(element.GetValueAttribute());
        }
        public virtual UITestControlCollection GetChildren()
        {
            ReadOnlyCollection <IWebElement> descendants = WebElement.FindElements(By.XPath("*"));
            UITestControlCollection          collection  = new UITestControlCollection();

            foreach (IWebElement webElement in descendants)
            {
                collection.Add(new UITestControl(this, webElement));
            }

            return(collection);
        }
Beispiel #7
0
        public void FindElements()
        {
            var htmlNode = new HtmlNodeBuilder("<html><body>" +
                                           "<ul><li class=\"nav-item\">Item 1</li><li class=\"nav-item\">Item 2</li></ul>" +
                                           "</body></html>").Build();

            var document = new WebElement(htmlNode, null);
            var list = document.FindElements(By.ClassName("nav-item"));

            Assert.That(list.Count, Is.EqualTo(2));
            Assert.That(list[0].TagName, Is.EqualTo("li"));
            Assert.That(list[1].TagName, Is.EqualTo("li"));
        }
Beispiel #8
0
        public string GetSelected()
        {
            var els = WebElement.FindElements(RadioLocator);

            foreach (var element in els)
            {
                if (element?.GetAttribute("checked") != null)
                {
                    return(element.GetAttribute("id"));
                }
            }
            return(null);
        }
Beispiel #9
0
        /// <summary>
        /// Find elements by the requested locator strategy.
        /// </summary>
        /// <param name="by">Locator strategy to use to find requested elements.</param>
        /// <returns></returns>
        internal List <Element> FindElements(By by)
        {
            var list = new List <Element>();

            var elements = WebElement.FindElements(by);

            foreach (var element in elements)
            {
                list.Add(new Element(element, LogManager));
            }

            return(list);
        }
Beispiel #10
0
 public void UncheckAll(Array allValues)
 {
     foreach (var value in allValues.ToStringArray())
     {
         Invoker.DoAction($"Unselect item '{string.Join(" -> ", value)}'",
                          () =>
         {
             var els       = WebElement.FindElements(CheckListLocator);
             var itemsList = els.FirstOrDefault(e => e.GetAttribute("id").Equals(value));
             if (itemsList?.GetAttribute("checked") != null)
             {
                 itemsList.Click();
             }
         });
     }
 }
        public string[] GetSelected(Array values)
        {
            var selectedItems = new List <string>();

            foreach (var value in values.ToStringArray())
            {
                var els       = WebElement.FindElements(MultiItemLocator);
                var itemsList = els.FirstOrDefault(e => e.Text.Equals(value));
                if (itemsList?.GetAttribute("selected") != null)
                {
                    selectedItems.Add(value);
                }
            }

            selectedItems.Reverse();
            return(selectedItems.ToArray());
        }
Beispiel #12
0
        /// <summary>
        /// Reads the value or text of the element.
        /// </summary>
        public string Read()
        {
            var result = string.Empty;

            if (WebElement.TagName == "input" || WebElement.TagName == "textarea")
            {
                result = WebElement.GetAttribute("value") ?? string.Empty;
            }
            if (WebElement.TagName == "select")
            {
                var value  = WebElement.GetAttribute("value");
                var option = WebElement.FindElements(By.TagName("option")).FirstOrDefault(x => x.GetAttribute("value") == value);
                if (option != null)
                {
                    result = option.Text ?? string.Empty;
                }
            }
            if (result == string.Empty)
            {
                result = WebElement.Text ?? string.Empty;
            }
            return(result);
        }
Beispiel #13
0
 /// <summary>
 /// Returns all row elements.
 /// </summary>
 /// <returns>List of row elements.</returns>
 public IList <IWebElement> GetRowElements()
 {
     return(WebElement.FindElements(By.TagName("tr")));
 }
Beispiel #14
0
 /// <summary>
 /// Retorna os filhos de uma cell, filtrados pela tag
 /// </summary>
 /// <param name="cssSelector">string nome da tag que deseja retornar</param>
 /// <returns>lista de IWebElement</returns>
 public ICollection <IWebElement> GetChildren(string cssSelector)
 {
     return(WebElement.FindElements(By.CssSelector(cssSelector)));
 }
Beispiel #15
0
        public bool HasSelected()
        {
            var element = WebElement.FindElements(By.TagName("option")).SingleOrDefault(e => e.Selected);

            return(element != null);
        }
Beispiel #16
0
 private IReadOnlyCollection <IWebElement> GetOptions()
 {
     return(WebElement.FindElements(By.TagName("option")));
 }
Beispiel #17
0
 /// <summary>
 /// Busca todos elementos filhos da celula
 /// </summary>
 /// <returns>lista de IWebElement</returns>
 public ICollection <IWebElement> GetChildren()
 {
     return(WebElement.FindElements(By.XPath("descendant::*")));
 }
Beispiel #18
0
 public virtual ReadOnlyCollection <IWebElement> FindElements(By by)
 {
     return(WebElement.FindElements(by));
 }
Beispiel #19
0
 /// <summary>
 /// Returns number of columns in table.
 /// </summary>
 /// <returns>Number of columns in table.</returns>
 public int GetColumnSize()
 {
     return(WebElement.FindElements(By.TagName("th")).Count);
 }
Beispiel #20
0
 /// <summary>
 /// Returns number of rows in table.
 /// </summary>
 /// <returns>Number of rows in table.</returns>
 public int GetRowSize()
 {
     return(WebElement.FindElements(By.TagName("tr")).Count);
 }
 public System.Collections.ObjectModel.ReadOnlyCollection <IWebElement> FindElements(By by)
 {
     return(WebElement.FindElements(by));
 }
Beispiel #22
0
 public IReadOnlyCollection <IWebElement> VerifyPinnedRepo()
 {
     return(WebElement.FindElements(_driver, PinnedRepo, 10));
 }
Beispiel #23
0
 protected IList <string> GetFooterAction()
 {
     return(WebElement.FindElements(FooterLocator).Select(e => e.Text).ToList());
 }
Beispiel #24
0
 /// <summary>
 /// Returns all column elements.
 /// </summary>
 /// <returns>List of all column elements.</returns>
 public IList <IWebElement> GetHeaderElements()
 {
     return(WebElement.FindElements(By.TagName("th")));
 }
Beispiel #25
0
 public List <string> Items(By locator)
 {
     return(WebElement.FindElements(locator).Select(i => i.Text).ToList());
 }
Beispiel #26
0
 public void Children(By locator) => WebElement.FindElements(locator);