public TestParameters(TaskInfo rootNode, API api_CancelWait, WaitBy waitBy_CancelWait, int waitTime) { WaitBy_CancelWait = waitBy_CancelWait; WaitTime = waitTime; RootNode = rootNode; API_CancelWait = api_CancelWait; }
public TestParameters_WaitAllAny(API api, int waitTime, WaitBy waitBy, TaskInfo[] allTasks) { Api = api; WaitBy = waitBy; WaitTime = waitTime; AllTaskInfos = allTasks; }
private CountdownEvent _countdownEvent; // event to signal the main thread that the whole task tree has been created #endregion /// <summary> /// .ctor /// </summary> public TaskCancelWaitTest(TestParameters parameters) { _api = parameters.API_CancelWait; _waitBy = parameters.WaitBy_CancelWait; _waitTimeout = parameters.WaitTime; _taskTree = parameters.RootNode; _countdownEvent = new CountdownEvent(CaluateLeafNodes(_taskTree)); }
/// <summary> /// Initializes a new instance of the <see cref="WaitForElementAttribute" /> class. /// </summary> /// <param name="waitBy">The kind of the element selector to wait for.</param> /// <param name="selector">The selector.</param> /// <param name="until">The waiting condition.</param> /// <param name="on">The trigger events.</param> /// <param name="priority">The priority.</param> public WaitForElementAttribute( WaitBy waitBy, string selector, Until until = Until.MissingOrHidden, TriggerEvents on = TriggerEvents.AfterClick, TriggerPriority priority = TriggerPriority.Medium) : base(until, on, priority) { WaitBy = waitBy; Selector = selector; }
protected virtual void Wait(IWebElement scopeElement, WaitUnit[] waitUnits) { foreach (WaitUnit unit in waitUnits) { By by = WaitBy.GetBy(Selector).With(unit.Options); if (unit.Method == WaitMethod.Presence) scopeElement.Exists(by); else scopeElement.Missing(by); } }
private static string ConvertToString(WaitBy waitBy) { switch (waitBy) { case WaitBy.Id: return("id"); case WaitBy.Name: return("name"); case WaitBy.Class: return("class"); case WaitBy.Css: return("CSS selector"); case WaitBy.XPath: return("XPath"); default: throw ExceptionFactory.CreateForUnsupportedEnumValue(waitBy, nameof(waitBy)); } }
protected virtual void Wait <TOwner>(IUIComponent <TOwner> scopeComponent, WaitUnit waitUnit) where TOwner : PageObject <TOwner> { ScopeSource actualScopeSource = scopeSource ?? scopeComponent.ScopeSource; StaleSafely.Execute( options => { ISearchContext scopeContext = actualScopeSource.GetScopeContext(scopeComponent, SearchOptions.Within(options.Timeout)); By by = WaitBy.GetBy(Selector).With(options); if (waitUnit.Method == WaitUnit.WaitMethod.Presence) { scopeContext.Exists(by); } else { scopeContext.Missing(by); } }, waitUnit.SearchOptions); }
public static By GetBy(this WaitBy waitBy, string selector) { switch (waitBy) { case WaitBy.Id: return(By.Id(selector)); case WaitBy.Name: return(By.Name(selector)); case WaitBy.Class: return(By.ClassName(selector)); case WaitBy.Css: return(By.CssSelector(selector)); case WaitBy.XPath: return(By.XPath(selector)); default: throw ExceptionFactory.CreateForUnsupportedEnumValue(waitBy, nameof(waitBy)); } }
private AggregateException _caughtException; // exception thrown during wait #endregion public TaskWaitAllAnyTest(TestParameters_WaitAllAny parameters) { _api = parameters.Api; _waitBy = parameters.WaitBy; _waitTimeout = parameters.WaitTime; _taskInfos = parameters.AllTaskInfos; _tasks = new Task[parameters.AllTaskInfos.Length]; }
public WaitForElementLogSection(UIComponent component, WaitBy waitBy, string selector, WaitUnit waitUnit) : base(component) { Message = $"Wait until element by \"{selector}\" {ConvertToString(waitBy)} is {waitUnit.GetWaitingText()}"; }
[Obsolete("Use another constructor that uses 'Until' type instead of 'WaitUntil'.")] // Obsolete since v0.15.0. public WaitForElementAttribute(WaitBy waitBy, string selector, WaitUntil until = WaitUntil.MissingOrHidden, TriggerEvents on = TriggerEvents.AfterClick, TriggerPriority priority = TriggerPriority.Medium) : this(waitBy, selector, (Until)(int)until, on, priority) { }
// TODO: Remove it when the following constructor is removed. public WaitForElementAttribute(WaitBy waitBy, string selector) : this(waitBy, selector, Until.MissingOrHidden) { }