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); }
/// <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.FindElements(selector); return(_getFunc(element)); }
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); }
/// <summary> /// Clear by selector /// </summary> /// <param name="selector">selector</param> /// <returns>action provider</returns> public virtual IActionProvider Clear(string selector) { _actionProvider.FindElements(selector).Apply(e => e.Clear()); return(_actionProvider); }
/// <summary> /// Select a set of elements to send value to /// </summary> /// <param name="selector">element selector</param> /// <returns>action provider</returns> public virtual IActionProvider To(string selector) { _actionProvider.FindElements(selector).Apply(e => e.SendKeys(_sendValue)); return(_actionProvider); }
/// <summary> /// Find All elements meeting the specified selector /// </summary> /// <param name="selector">selector to use to find elements</param> /// <returns>elements</returns> public ReadOnlyCollection <IWebElement> FindElements(string selector) { return(_actionProvider.FindElements(selector)); }