/// <summary>
        /// Switch to element using by
        /// </summary>
        /// <param name="selector"></param>
        /// <returns></returns>
        public virtual IYieldsAction Frame(By selector)
        {
            var element = _actionProvider.FindElement(selector);

            _actionProvider.UsingFixture.Driver.SwitchTo().Frame(element);

            return(new YieldsAction(_actionProvider.UsingFixture));
        }
Exemple #2
0
        public virtual IActionProvider MoveTheMouseTo(string selector, int?x = null, int?y = null)
        {
            Actions action = new Actions(_actionProvider.UsingFixture.Driver);

            var element = _actionProvider.FindElement(selector);

            if (x.HasValue && y.HasValue)
            {
                action.MoveToElement(element, x.Value, y.Value);
            }
            else
            {
                action.MoveToElement(element);
            }

            action.Perform();

            return(_actionProvider);
        }
Exemple #3
0
        public virtual IActionProvider Click(string selector, ClickMode clickMode = ClickMode.ClickAll)
        {
            switch (clickMode)
            {
            case ClickMode.ClickOne:
                _actionProvider.FindElement(selector).Click();
                break;

            case ClickMode.ClickAny:
                _actionProvider.FindElements(selector).Apply(c => c.Click());
                break;

            case ClickMode.ClickAll:
                var all = _actionProvider.FindElements(selector);

                if (all.Count == 0)
                {
                    throw new Exception("Could not locate any using selector: " + selector);
                }
                all.Apply(c => c.Click());
                break;

            case ClickMode.ClickFirst:
                var firstList = _actionProvider.FindElements(selector);

                if (firstList.Count == 0)
                {
                    throw new Exception("Could not locate any using selector: " + selector);
                }
                firstList[0].Click();
                break;
            }
            var configuration = _actionProvider.UsingFixture.Configuration;

            var waitTime = (int)(configuration.FixtureImplicitWait * 1000);

            if (waitTime >= 0)
            {
                Thread.Sleep(waitTime);
            }

            return(configuration.AlwaysWaitForAjax ? _actionProvider.Wait.ForAjax().Then : _actionProvider);
        }
Exemple #4
0
        /// <summary>
        /// For a specified element
        /// </summary>
        /// <param name="selector">element selector</param>
        /// <returns>return type of T</returns>
        public virtual T From(string selector)
        {
            var element = _actionProvider.FindElement(selector);

            return(_getFunc(element));
        }
Exemple #5
0
        public virtual IActionProvider DoubleClick(string selector, ClickMode clickMode = ClickMode.ClickAll)
        {
            switch (clickMode)
            {
            case ClickMode.ClickOne:
            {
                var element = _actionProvider.FindElement(selector);

                Actions action = new Actions(_fixture.Driver);
                action.DoubleClick(element);
                action.Perform();
            }
            break;

            case ClickMode.ClickAny:
            {
                _actionProvider.FindElements(selector).Apply(element =>
                    {
                        Actions action = new Actions(_fixture.Driver);
                        action.DoubleClick(element);
                        action.Perform();
                    });
            }
            break;

            case ClickMode.ClickAll:
            {
                var all = _actionProvider.FindElements(selector);

                if (all.Count == 0)
                {
                    throw new Exception("Could not locate any using selector: " + selector);
                }

                all.Apply(element =>
                    {
                        Actions action = new Actions(_fixture.Driver);
                        action.DoubleClick(element);
                        action.Perform();
                    });
            }
            break;

            case ClickMode.ClickFirst:
            {
                var firstList = _actionProvider.FindElements(selector);

                if (firstList.Count == 0)
                {
                    throw new Exception("Could not locate any using selector: " + selector);
                }

                Actions action = new Actions(_fixture.Driver);
                action.DoubleClick(firstList[0]);
                action.Perform();
            }
            break;
            }

            var configuration = _fixture.Configuration;

            var waitTime = (int)(configuration.FixtureImplicitWait * 1000);

            if (waitTime >= 0)
            {
                Thread.Sleep(waitTime);
            }

            return(configuration.AlwaysWaitForAjax ? _fixture.Wait.ForAjax().Then : _actionProvider);
        }
Exemple #6
0
 /// <summary>
 /// Find a specified element by selector
 /// </summary>
 /// <param name="selector">selector to use to locate element</param>
 /// <returns>element or throws an exception</returns>
 public IWebElement FindElement(string selector)
 {
     return(_actionProvider.FindElement(selector));
 }