コード例 #1
0
        /*-------------------------------------------------------------------*/

        protected override T Execute(IWebDriver webDriver)
        {
            var jsExecutor = WebDriverUtilities.WebDriverToJavaScriptExecutor(webDriver);

            if (_async)
            {
                if (typeof(T) == typeof(IElement))
                {
                    return(PerformJsAsyncAndReturnElement(jsExecutor, _jsExpression));
                }
                else
                {
                    return(PerformJsAsyncAndReturnPrimitive(jsExecutor, _jsExpression));
                }
            }
            else
            {
                if (typeof(T) == typeof(IElement))
                {
                    return(PerformJsSyncAndReturnElement(jsExecutor, _jsExpression));
                }
                else
                {
                    return(PerformJsSyncAndReturnPrimitive(jsExecutor, _jsExpression));
                }
            }
        }
コード例 #2
0
        public void WebDriverToJavaScriptExecutor_NullWebDriver_ThrowsArgumentNullException()
        {
            // Arrange
            IWebDriver webDriver = null;

            // Act
            TestDelegate action = () => WebDriverUtilities.WebDriverToJavaScriptExecutor(webDriver);

            // Assert
            Assert.Throws <ArgumentNullException>(action);
        }
コード例 #3
0
        public void ObjectToWebDriver_NullWebDriverObj_ThrowsArgumentException()
        {
            // Arrange
            object webDriverObj = null;

            // Act
            TestDelegate action = () => WebDriverUtilities.ObjectToWebDriver(webDriverObj);

            // Assert
            Assert.Throws <ArgumentNullException>(action);
        }
コード例 #4
0
        public void WebDriverToObject_WebDriverInstance_ReturnsAsObject()
        {
            // Arrange
            IWebDriver webDriver = Substitute.For <IWebDriver>();

            // Act
            object instance = WebDriverUtilities.WebDriverToObject(webDriver);

            // Assert
            Assert.IsInstanceOf <object>(instance);
        }
コード例 #5
0
        public void ThenTheBoxMustContainLinkAtGivenIndex(string domainNameBox, string linkName, int index)
        {
            // Check for domainbox header
            var domainNameListBoxElement = WebDriverUtilities.FindElement(driver, By.XPath($"//div[@id='sidebar_left']/div[@class='navigation_box']/h2"), 5);

            Assert.AreEqual(domainNameListBoxElement.Text, domainNameBox, true, $"Domain Box List can not find the header {domainNameBox}");

            // check for the link
            var domainNameList2ndElement = WebDriverUtilities.FindElement(driver, By.XPath($"//div[@id='sidebar_left']/div[@class='navigation_box']/ul/li[{index}]"), 5);

            Assert.AreEqual(domainNameList2ndElement.Text, linkName, true, $"Domain Box List can not find the link {linkName}");
        }
コード例 #6
0
        public void CloseBrowser()
        {
            try
            {
                if (ScenarioContext.Current.TestError != null || ExceptionHandler.CurrentException != null)
                {
                    WebDriverUtilities.CaptureScreenShot(_scenarioTitle);
                }
            }
            catch (Exception e)
            {
                WebDriverUtilities.CaptureScreenShot(_scenarioTitle);
            }

            Driver.CloseBrowser();
        }
コード例 #7
0
        public void Execute(object webDriverObj)
        {
            var webDriver = WebDriverUtilities.ObjectToWebDriver(webDriverObj);

            Execute(webDriver);
        }
コード例 #8
0
        public T Execute(object webDriverObj)
        {
            var webDriver = WebDriverUtilities.ObjectToWebDriver(webDriverObj);

            return(Execute(webDriver));
        }