public static bool WaitUntilElementIsSelected(this IWebDriver webDriver, By by, int timeoutInSeconds = 20)
        {
            var wait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(timeoutInSeconds));

            return(wait.Until(ExpectedConditionsExtensions.ElementToBeSelected(by)));
        }
        public static bool WaitUntilElementSelectionStateIs(this IWebDriver webDriver, IWebElement webElement, bool selected, int timeoutInSeconds = 20)
        {
            var wait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(timeoutInSeconds));

            return(wait.Until(ExpectedConditionsExtensions.ElementSelectionStateToBe(webElement, selected)));
        }
        public static IAlert WaitUntilAlertIsPresent(this IWebDriver webDriver, int timeoutInSeconds = 20)
        {
            var wait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(timeoutInSeconds));

            return(wait.Until(ExpectedConditionsExtensions.AlertIsPresent()));
        }
        public static bool WaitUntilElementContainsTextIsInvisible(this IWebDriver webDriver, By by, string text, int timeoutInSeconds = 20)
        {
            var wait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(timeoutInSeconds));

            return(wait.Until(ExpectedConditionsExtensions.ElementContainsTextIsInvisible(by, text)));
        }
        public static bool WaitUntilTextIsPresentInElementValue(this IWebDriver webDriver, By by, string text, int timeoutInSeconds = 20)
        {
            var wait = new WebDriverWait(webDriver, TimeSpan.FromSeconds(timeoutInSeconds));

            return(wait.Until(ExpectedConditionsExtensions.TextToBePresentInElementValue(by, text)));
        }