Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Example of extensions for IWebElement
- using System.Collections.ObjectModel;
- namespace OpenQA.Selenium.Extensions
- {
- public static class WebElement
- {
- public static void ClearAndSendKeys(this IWebElement webElement, string keys)
- {
- webElement.Clear();
- webElement.SendKeys(keys);
- }
- public static IWebElement FindElementByCss(this IWebElement we, string css)
- => we.FindElement(By.CssSelector(css));
- public static ReadOnlyCollection<IWebElement> FindElementsByCss(this IWebElement we, string css)
- => we.FindElements(By.CssSelector(css));
- public static void Mark(this IWebElement we) => MarkElement(we, true);
- public static void Unmark(this IWebElement we) => MarkElement(we, false);
- private static void MarkElement(IWebElement we, bool isChecked)
- {
- if (we.Selected != isChecked)
- we.Click();
- }
- public static void Mark(this ReadOnlyCollection<IWebElement> e) => MarkElements(e, true);
- public static void Unmark(this ReadOnlyCollection<IWebElement> e) => MarkElements(e, false);
- private static void MarkElements(ReadOnlyCollection<IWebElement> elements, bool isChecked)
- {
- foreach (var element in elements)
- {
- MarkElement(element, isChecked);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement