public MyComboBox(By selectorLocator = null, By optionsNamesLocatorTemplate = null) : base(selectorLocator, optionsNamesLocatorTemplate) { SetValueAction = (c, value) => NewInput(value); GetTextAction = c => TextField.Text; _textField = new GetElementType(selectorLocator); }
/// <summary> /// getElementBy /// </summary> /// <param name="drive"></param> /// <param name="type">GetElementType</param> /// <param name="key">Key</param> /// <param name="search">Type of search for the Id</param> /// <param name="tagToGet">Tag name for the search</param> /// <param name="extraSearch">Extra search</param> /// <returns></returns> public static IWebElement GetElementBy(this RemoteWebDriver drive, GetElementType type, string key, SearchType search = SearchType.Exact, string tagToGet = null, string extraSearch = null) { IWebElement ret = null; int total = 0; bool cont = true; do { total++; cont = false; try { var aux = drive.GetListElementBy(type, key, search: search, tagToGet: tagToGet, extraSearch: extraSearch); if (aux != null && aux.Count > 0) { ret = aux.FirstOrDefault(); } if (ret != null) { var displayed = ret.Displayed; } } catch (Exception ex) { cont = true; System.Threading.Thread.Sleep(1); if (total == HowManyTry) { throw; } } } while (cont); return(ret); }
new TypePair( GetElementType(context.SourceType),
/// <summary> /// getElementBy /// </summary> /// <param name="drive"></param> /// <param name="type">GetElementType</param> /// <param name="key">Key</param> /// <param name="search">Type of search for the Id</param> /// <param name="tagToGet">Tag name for the search</param> /// <param name="extraSearch">Extra search</param> /// <returns></returns> public static IList <IWebElement> GetListElementBy(this RemoteWebDriver drive, GetElementType type, string key, SearchType search = SearchType.Exact, string tagToGet = null, string extraSearch = null) { List <IWebElement> ret = null; int total = 0; bool cont = true; extraSearch = string.IsNullOrWhiteSpace(extraSearch) ? "" : " " + extraSearch; do { total++; cont = false; try { string searchTag = string.Empty; string searchCssSelector = string.Empty; switch (type) { case GetElementType.Id: searchTag = "id"; break; case GetElementType.Css: searchTag = "class"; break; } switch (search) { case SearchType.Exact: searchCssSelector = string.Format("[{0}={1}]{2}", searchTag, key, extraSearch); break; case SearchType.AtEnd: searchCssSelector = string.Format("[{0}$={1}]{2}", searchTag, key, extraSearch); break; case SearchType.AtStart: searchCssSelector = string.Format("[{0}^={1}]{2}", searchTag, key, extraSearch); break; case SearchType.Contains: searchCssSelector = string.Format("[{0}*={1}]{2}", searchTag, key, extraSearch); break; } ret = drive.FindElementsByCssSelector(searchCssSelector).ToList(); if (!string.IsNullOrWhiteSpace(tagToGet)) { ret = ret.Where(o => o.TagName == tagToGet).ToList(); } } catch (Exception ex) { cont = true; System.Threading.Thread.Sleep(1); if (total == HowManyTry) { throw; } } } while (cont); return(ret); }
protected BaseSelector(By optionsNamesLocator, By allLabelsLocator) : base(optionsNamesLocator) { _allLabels = new GetElementType(allLabelsLocator); }
protected BaseSelector(By optionsNamesLocator, By allLabelsLocator, List <IWebElement> webElements = null, WebBaseElement element = null) : base(optionsNamesLocator, webElements: webElements, element: element) { _allLabels = new GetElementType(allLabelsLocator, this); }
public TypePair GetAssociatedTypes(in TypePair context) => new TypePair(GetElementType(context.SourceType), GetElementType(context.DestinationType));
public MyComboBox(By selectorLocator, By optionsNamesLocatorTemplate, By valueLocator, By allOptionsNamesLocator = null) : base(selectorLocator, optionsNamesLocatorTemplate, allOptionsNamesLocator) { _textField = new GetElementType(valueLocator); }