Example #1
0
        public TElement Find <TElement>(ISearchContext searchContext, By by) where TElement : class, IElement
        {
            var element = searchContext.FindElement(by.ToSeleniumBy());
            var result  = ResolveElement <TElement>(searchContext, element);

            return(result);
        }
Example #2
0
        public void WaitForDisplayed(IWebDriver driver, By by, TimeSpan timeout)
        {
            var wait = new WebDriverWait(driver, timeout)
            {
                PollingInterval = TimeSpan.FromSeconds(1.0)
            };

            wait.Until(x =>
            {
                var executor = (IJavaScriptExecutor)x;
                var element  = x.FindElement(by.ToSeleniumBy());

                return((bool)executor.ExecuteScript(
                           @"var rect = arguments[0].getBoundingClientRect();

                    return (
                        rect.top >= 0 &&
                        rect.left >= 0 &&
                        rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
                        rect.right <= (window.innerWidth || document.documentElement.clientWidth)
                    );", element));
            });
        }
Example #3
0
 public void WaitForDisplayed(By by)
 {
     ElementFinderService.WaitForDisplayed(Driver, by, TimeSpan.FromSeconds(30));
 }
Example #4
0
 public bool IsElementPresent(By by)
 {
     return(ElementFinderService.IsElementPresent(InternalElement, by));
 }
Example #5
0
 IEnumerable <TElement> IElementFinderService.FindAll <TElement>(By by)
 {
     return(ElementFinderService.FindAll <TElement>(InternalElement, by));
 }
Example #6
0
 TElement IElementFinderService.Find <TElement>(By by)
 {
     return(ElementFinderService.Find <TElement>(InternalElement, by));
 }
Example #7
0
        public bool IsElementPresent(ISearchContext searchContext, By by)
        {
            var element = Find <Element>(searchContext, by);

            return(element.IsVisible);
        }
Example #8
0
        public IEnumerable <TElement> FindAll <TElement>(ISearchContext searchContext, By by) where TElement : class, IElement
        {
            var elements = searchContext.FindElements(by.ToSeleniumBy());

            return(elements.Select(currentElement => ResolveElement <TElement>(searchContext, currentElement)));
        }