コード例 #1
0
 public TestParameters(TaskInfo rootNode, API api_CancelWait, WaitBy waitBy_CancelWait, int waitTime)
 {
     WaitBy_CancelWait = waitBy_CancelWait;
     WaitTime          = waitTime;
     RootNode          = rootNode;
     API_CancelWait    = api_CancelWait;
 }
コード例 #2
0
ファイル: TaskWaitAllAnyTest.cs プロジェクト: ESgarbi/corefx
 public TestParameters_WaitAllAny(API api, int waitTime, WaitBy waitBy, TaskInfo[] allTasks)
 {
     Api = api;
     WaitBy = waitBy;
     WaitTime = waitTime;
     AllTaskInfos = allTasks;
 }
コード例 #3
0
        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));
        }
コード例 #4
0
        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));
        }
コード例 #5
0
 /// <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;
 }
コード例 #6
0
        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);
            }
        }
コード例 #7
0
        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));
            }
        }
コード例 #8
0
        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);
        }
コード例 #9
0
ファイル: WaitByExtensions.cs プロジェクト: vik542/atata
        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));
            }
        }
コード例 #10
0
 public TestParameters(TaskInfo rootNode, API api_CancelWait, WaitBy waitBy_CancelWait, int waitTime)
 {
     WaitBy_CancelWait = waitBy_CancelWait;
     WaitTime = waitTime;
     RootNode = rootNode;
     API_CancelWait = api_CancelWait;
 }
コード例 #11
0
ファイル: TaskWaitAllAnyTest.cs プロジェクト: ESgarbi/corefx
        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];
        }
コード例 #12
0
 public WaitForElementLogSection(UIComponent component, WaitBy waitBy, string selector, WaitUnit waitUnit)
     : base(component)
 {
     Message = $"Wait until element by \"{selector}\" {ConvertToString(waitBy)} is {waitUnit.GetWaitingText()}";
 }
コード例 #13
0
 [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)
 {
 }
コード例 #14
0
 // TODO: Remove it when the following constructor is removed.
 public WaitForElementAttribute(WaitBy waitBy, string selector)
     : this(waitBy, selector, Until.MissingOrHidden)
 {
 }