/// <summary> /// Кликнуть и подождать пока на странице отображается прогресс /// </summary> /// <param name="sleepTimeout">принудительное ожидание после выполнения клика</param> /// <param name="progressInevitable"> /// true означает что после клика прогресс точно должен появиться /// поэтому сначала ожидаем его появления, потом ожидаем пока он не исчезнет /// </param> public void ClickAndWaitWhileProgress( string scssSelector, int sleepTimeout = 0, bool progressInevitable = false) { this.ClickAndWaitWhileProgress(ScssBuilder.CreateBy(scssSelector), sleepTimeout, progressInevitable); }
public void Run(string scssSelector1, string scssSelector2, string resultXpath, string resultCss) { Scss scss1 = ScssBuilder.Create(scssSelector1); Scss scss2 = ScssBuilder.Create(scssSelector2); Scss resultScss = scss1.Concat(scss2); Assert.AreEqual(resultXpath, resultScss.Xpath); Assert.AreEqual(resultCss, resultScss.Css); }
public override void Fill() { try { RootSelector = ScssBuilder.Create(GetRootScss()); } catch (InvalidScssException) { RootSelector = null; } Name = GetName(); ComponentType = GetTypeName(); FieldName = GetFieldName(); Id = GenerateId(ParentId, FieldName); ConstructorParams = GetParams(); }
private By CreateFinder() { By by = null; if (this.SelectorNotEmpty(this.Name, by)) { by = By.Name(this.Name); } if (this.SelectorNotEmpty(this.TagName, by)) { by = By.TagName(this.TagName); } if (this.SelectorNotEmpty(this.Css, by)) { by = By.CssSelector(this.Css); } if (this.SelectorNotEmpty(this.ClassName, by)) { by = By.ClassName(this.ClassName); } if (this.SelectorNotEmpty(this.ID, by)) { by = By.Id(this.ID); } if (this.SelectorNotEmpty(this.XPath, by)) { by = By.XPath(this.XPath); } if (this.SelectorNotEmpty(this.LinkText, by)) { by = By.LinkText(this.LinkText); } if (this.SelectorNotEmpty(this.PartialLinkText, by)) { by = By.PartialLinkText(this.PartialLinkText); } if (this.SelectorNotEmpty(this.Scss, by)) { by = ScssBuilder.CreateBy(this.Scss); } if (by == null) { throw new Exception("No one selector is defined"); } return(by); }
public Selector Convert(string sourceScss) { string xpath = string.Empty; string css = string.Empty; string scss = sourceScss ?? string.Empty; while (!string.IsNullOrEmpty(scss)) { try { var scssObject = ScssBuilder.Create(scss); return(new Selector(scss, scssObject.Css, scssObject.Xpath)); } catch (InvalidScssException) { scss = scss.Substring(0, scss.Length - 1); } } return(new Selector(scss, css, xpath)); }
/// <summary> /// Проверяет имеется ли у элемента указанный класс /// </summary> public bool HasClass(string scssSelector, string className) { return(this.HasClass(ScssBuilder.CreateBy(scssSelector), className)); }
/// <summary> /// Проверяет что элемент отображается на странице /// </summary> public bool Visible(string scssSelector) { return(this.Visible(ScssBuilder.CreateBy(scssSelector))); }
/// <summary> /// Clear text field /// </summary> public void Clear(string scssSelector) => Clear(ScssBuilder.CreateBy(scssSelector));
public static string Concat(string scssSelector1, string scssSelector2) { return(ScssBuilder.Concat(scssSelector1, scssSelector2).Value); }
/// <summary> /// Press Key in input field /// </summary> public void PressKey(string scssSelector, string key) => PressKey(ScssBuilder.CreateBy(scssSelector), key);
/// <summary> /// Move the cursor over an element /// </summary> public void MouseOver(string scssSelector, By frameBy, int sleepTimeout = 0) => MouseOver(ScssBuilder.CreateBy(scssSelector), frameBy, sleepTimeout);
public bool Visible(string scssSelector, By frameBy = null) => Visible(ScssBuilder.CreateBy(scssSelector), frameBy);
/// <summary> /// Is element exist /// </summary> public bool Exists(string scssSelector, string frameScss = null) => Exists(ScssBuilder.CreateBy(scssSelector), ScssBuilder.CreateBy(frameScss));
/// <summary> /// Click on all elements found by selector /// </summary> public void ClickByAll(string scssSelector) => ClickByAll(ScssBuilder.CreateBy(scssSelector));
/// <summary> /// Attempt to find element. If not found - doesn't throw an exception /// </summary> public IWebElement ElementFastOrNull(string scssSelector, bool displayed = true) => ElementFastOrNull(ScssBuilder.CreateBy(scssSelector), null, displayed);
/// <summary> /// Search for element. If not found - throw an exception /// </summary> public IWebElement Element(string scssSelector) => Element(ScssBuilder.CreateBy(scssSelector));
/// <summary> /// Find the elements by the specified selector without waiting. Do not fall down if nothing is found /// Return only visible elements /// </summary> public List <IWebElement> VisibleElements(string scssSelector) => VisibleElements(ScssBuilder.CreateBy(scssSelector));
public void DragVertically(string scssSelector, int pixels) => DragHorizontally(ScssBuilder.CreateBy(scssSelector), pixels);
/// <summary> /// Существует ли элемент на странице /// </summary> public bool Exists(string scssSelector) { return(this.Exists(ScssBuilder.CreateBy(scssSelector))); }
public bool Exists(ISearchContext context, string scssSelector) => Browser.Find.ElementFastOrNull(context, ScssBuilder.CreateBy(scssSelector), null, false) != null;
/// <summary> /// Отмечен ли чекбокс /// </summary> public bool Checked(string scssSelector) { return(this.Checked(ScssBuilder.CreateBy(scssSelector))); }
public WebToggleButton(IPage parent, string scssSelector, string selectedClass) : base(parent, ScssBuilder.CreateBy(scssSelector)) { this._selectedClass = selectedClass; }
public bool HasClass(string scssSelector, string className) => HasClass(ScssBuilder.CreateBy(scssSelector), null, className);
public void TypeIn(string scssSelector, By frameBy, object value, bool clear = true) => TypeIn(ScssBuilder.CreateBy(scssSelector), frameBy, value, clear);
public bool Exists(string scssSelector, By frameBy = null) => Exists(ScssBuilder.CreateBy(scssSelector), frameBy);
/// <summary> /// Найти элементы по указанному селектору без ожидания. Не падать если ничего не найдено /// Вернуть только видимые элементы /// </summary> public List <IWebElement> VisibleElements(string scssSelector) { return(this.VisibleElements(ScssBuilder.CreateBy(scssSelector))); }
public bool Checked(string scssSelector) => Checked(ScssBuilder.CreateBy(scssSelector));
/// <summary> /// Попытка поиска элемента. Если не найден - не кидать исключение /// </summary> public IWebElement ElementFastS(string scssSelector, bool displayed = true) { return(this.ElementFastS(ScssBuilder.CreateBy(scssSelector), displayed)); }
protected SimpleWebComponent(IPage parent, string rootScss) : base(parent, rootScss) { By = ScssBuilder.CreateBy(rootScss); }
/// <summary> /// Найти элемент без ожидания /// </summary> public IWebElement ElementFast(string scssSelector) { return(this.ElementFast(ScssBuilder.CreateBy(scssSelector))); }