Example #1
0
 /// <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);
 }
Example #2
0
        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);
        }
Example #3
0
        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();
        }
Example #4
0
        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);
        }
Example #5
0
        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));
        }
Example #6
0
 /// <summary>
 ///     Проверяет имеется ли у элемента указанный класс
 /// </summary>
 public bool HasClass(string scssSelector, string className)
 {
     return(this.HasClass(ScssBuilder.CreateBy(scssSelector), className));
 }
Example #7
0
 /// <summary>
 ///     Проверяет что элемент отображается на странице
 /// </summary>
 public bool Visible(string scssSelector)
 {
     return(this.Visible(ScssBuilder.CreateBy(scssSelector)));
 }
Example #8
0
 /// <summary>
 ///     Clear text field
 /// </summary>
 public void Clear(string scssSelector) => Clear(ScssBuilder.CreateBy(scssSelector));
Example #9
0
 public static string Concat(string scssSelector1, string scssSelector2)
 {
     return(ScssBuilder.Concat(scssSelector1, scssSelector2).Value);
 }
Example #10
0
 /// <summary>
 ///     Press Key in input field
 /// </summary>
 public void PressKey(string scssSelector, string key) => PressKey(ScssBuilder.CreateBy(scssSelector), key);
Example #11
0
 /// <summary>
 ///     Move the cursor over an element
 /// </summary>
 public void MouseOver(string scssSelector, By frameBy, int sleepTimeout = 0) => MouseOver(ScssBuilder.CreateBy(scssSelector), frameBy, sleepTimeout);
Example #12
0
 public bool Visible(string scssSelector, By frameBy = null) => Visible(ScssBuilder.CreateBy(scssSelector), frameBy);
Example #13
0
 /// <summary>
 /// Is element exist
 /// </summary>
 public bool Exists(string scssSelector, string frameScss = null) => Exists(ScssBuilder.CreateBy(scssSelector), ScssBuilder.CreateBy(frameScss));
Example #14
0
 /// <summary>
 ///     Click on all elements found by selector
 /// </summary>
 public void ClickByAll(string scssSelector) => ClickByAll(ScssBuilder.CreateBy(scssSelector));
Example #15
0
 /// <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);
Example #16
0
 /// <summary>
 ///     Search for element. If not found - throw an exception
 /// </summary>
 public IWebElement Element(string scssSelector) => Element(ScssBuilder.CreateBy(scssSelector));
Example #17
0
 /// <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));
Example #18
0
 public void DragVertically(string scssSelector, int pixels) => DragHorizontally(ScssBuilder.CreateBy(scssSelector), pixels);
Example #19
0
 /// <summary>
 ///     Существует ли элемент на странице
 /// </summary>
 public bool Exists(string scssSelector)
 {
     return(this.Exists(ScssBuilder.CreateBy(scssSelector)));
 }
Example #20
0
 public bool Exists(ISearchContext context, string scssSelector) => Browser.Find.ElementFastOrNull(context, ScssBuilder.CreateBy(scssSelector), null, false) != null;
Example #21
0
 /// <summary>
 ///     Отмечен ли чекбокс
 /// </summary>
 public bool Checked(string scssSelector)
 {
     return(this.Checked(ScssBuilder.CreateBy(scssSelector)));
 }
Example #22
0
 public WebToggleButton(IPage parent, string scssSelector, string selectedClass)
     : base(parent, ScssBuilder.CreateBy(scssSelector))
 {
     this._selectedClass = selectedClass;
 }
Example #23
0
 public bool HasClass(string scssSelector, string className) => HasClass(ScssBuilder.CreateBy(scssSelector), null, className);
Example #24
0
 public void TypeIn(string scssSelector, By frameBy, object value, bool clear = true) => TypeIn(ScssBuilder.CreateBy(scssSelector), frameBy, value, clear);
Example #25
0
 public bool Exists(string scssSelector, By frameBy       = null) => Exists(ScssBuilder.CreateBy(scssSelector), frameBy);
Example #26
0
 /// <summary>
 ///     Найти элементы по указанному селектору без ожидания. Не падать если ничего не найдено
 ///     Вернуть только видимые элементы
 /// </summary>
 public List <IWebElement> VisibleElements(string scssSelector)
 {
     return(this.VisibleElements(ScssBuilder.CreateBy(scssSelector)));
 }
Example #27
0
 public bool Checked(string scssSelector) => Checked(ScssBuilder.CreateBy(scssSelector));
Example #28
0
 /// <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);
 }
Example #30
0
 /// <summary>
 ///     Найти элемент без ожидания
 /// </summary>
 public IWebElement ElementFast(string scssSelector)
 {
     return(this.ElementFast(ScssBuilder.CreateBy(scssSelector)));
 }