/// <summary>
        /// The get value.
        /// </summary>
        /// <param name="findTechnique">
        /// The find technique.
        /// </param>
        /// <returns>
        /// The <see cref="bool"/>.
        /// </returns>
        public static bool GetValue(By findTechnique)
        {
            Log.Logger.Debug(string.Format("Getting value for switch ({0})", findTechnique));
            SnapshotManager.TakeSnapshot();
            var inputElement  = BrowserHost.Instance.FindElement(findTechnique);
            var containingDiv = inputElement.FindElement(By.XPath(".."));
            var classes       = containingDiv.GetAttribute("class");

            return(classes.IndexOf("switch-on", StringComparison.OrdinalIgnoreCase) >= 0);
        }
Beispiel #2
0
        /// <summary>
        /// The click link.
        /// </summary>
        /// <param name="findTechnique">
        /// The find technique.
        /// </param>
        /// <param name="rowIndex">
        /// The row index.
        /// </param>
        /// <param name="elementToClick">
        /// The element to click.
        /// </param>
        public static void ClickLink(By findTechnique, int rowIndex, By elementToClick)
        {
            Log.Logger.Debug(string.Format("Selecting row ({0}) in table {1}", rowIndex, findTechnique));
            SnapshotManager.TakeSnapshot();
            var table           = BrowserHost.Instance.FindElement(findTechnique);
            var rows            = table.FindElements(By.TagName("tr"));
            var rowToClick      = rows[rowIndex];
            var elementsToClick = rowToClick.FindElements(elementToClick);

            elementsToClick[0].Click();
        }
        /// <summary>
        /// The click label.
        /// </summary>
        /// <param name="forInput">
        /// The for input.
        /// </param>
        /// <param name="index">
        /// The index.
        /// </param>
        /// <exception cref="Exception">
        /// Could not find the label
        /// </exception>
        public static void ClickLabel(string forInput, int index)
        {
            Log.Logger.Debug(string.Format("Finding label {0} and index {1}", forInput, index));
            SnapshotManager.TakeSnapshot();
            var labels = BrowserHost.Instance.FindElements(By.TagName("label"));

            foreach (var webElement in labels)
            {
                var labelFor = webElement.GetAttribute("for");
                if (labelFor.Equals(forInput, StringComparison.OrdinalIgnoreCase))
                {
                    webElement.Click();
                    return;
                }
            }

            throw new Exception("Could not find label to click");
        }