/// <summary> /// Calculation method. /// </summary> /// <param name="chain"> /// Source sequence. /// </param> /// <param name="link"> /// Redundant parameter, not used in calculations. /// </param> /// <returns> /// Frequency of element in congeneric chain as <see cref="double"/>. /// </returns> public double Calculate(CongenericChain chain, Link link) { var count = new ElementsCount(); var length = new Length(); return count.Calculate(chain, link) / length.Calculate(chain, link); }
public void Should_BeImpossibleTo_FindHiddenElements_WithWrongArguments(ElementsCount count, ElementState state) { const string name = "custom name"; Assert.Throws(Is.AssignableFrom(typeof(TimeoutException)).And.Message.Contains(name), () => FindElements <Label>(HiddenElementsLoc, name, expectedCount: count, state: state), $"Tried to find elements with expected count '{count}' and state '{state}'"); }
public void Should_BePossibleTo_FindElements_ForNotExistsElements(ElementsCount count, ElementState state, int expectedCount) { var elementsCount = FindElements <Label>(NotExistElementLoc, expectedCount: count, state: state).Count; Assert.AreEqual(expectedCount, elementsCount, $"Elements count for not existing elements should be {expectedCount}"); }
public void Should_BePossibleTo_FindElements_ForHiddenElements(ElementsCount count, ElementState state, int expectedCount) { var elementsCount = FindElements <Label>(HiddenElementsLoc, expectedCount: count, state: state).Count; Assert.AreEqual(expectedCount, elementsCount, $"Elements count for hidden elements should be {expectedCount}"); }
protected virtual IList <T> FindElements <T>(By locator, string name = null, ElementSupplier <T> supplier = null, ElementsCount expectedCount = ElementsCount.Any, ElementState state = ElementState.Displayed) where T : IElement { return(ElementFactory.FindElements(locator, name, supplier, expectedCount, state)); }
/// <summary> /// The fill pairs count. /// </summary> /// <returns> /// The <see cref="int"/>. /// </returns> private int FillPairsCount() { var counter = 0; var elementCounter = new ElementsCount(); var firstElementCount = (int)elementCounter.Calculate(FirstChain, Link.None); for (int i = 1; i <= firstElementCount; i++) { int binaryInterval = GetBinaryInterval(i); if (binaryInterval > 0) { counter++; } } return counter; }
public virtual IList <T> FindElements <T>(By locator, string name = null, ElementSupplier <T> supplier = null, ElementsCount expectedCount = ElementsCount.Any, ElementState state = ElementState.Displayed) where T : IElement { var elementSupplier = ResolveSupplier(supplier); switch (expectedCount) { case ElementsCount.Zero: ConditionalWait.WaitForTrue(() => !ElementFinder.FindElements(locator, state, TimeSpan.Zero, name).Any(), message: LocalizationManager.GetLocalizedMessage("loc.elements.with.name.found.but.should.not", name, locator.ToString(), state.ToString())); break; case ElementsCount.MoreThenZero: ConditionalWait.WaitForTrue(() => ElementFinder.FindElements(locator, state, TimeSpan.Zero, name).Any(), message: LocalizationManager.GetLocalizedMessage("loc.no.elements.with.name.found.by.locator", name, locator.ToString())); break; case ElementsCount.Any: ConditionalWait.WaitFor(() => ElementFinder.FindElements(locator, state, TimeSpan.Zero, name) != null); break; default: throw new ArgumentOutOfRangeException($"No such expected value: {expectedCount}"); } var webElements = ElementFinder.FindElements(locator, state, TimeSpan.Zero, name); IEnumerable <T> elements = webElements.Select((webElement, index) => { var elementIndex = index + 1; var elementName = $"{name ?? "element"} {elementIndex}"; return(elementSupplier(GenerateXpathLocator(locator, webElement, elementIndex), elementName, state)); }); return(elements.ToList()); }
public IList <Label> GetListElements(ElementState state, ElementsCount count) { return(ElementFactory.FindElements <Label>(By.XPath("//ul[@id='blockbestsellers']//li"), state: state, expectedCount: count)); }
public IList <T> FindChildElements <T>(By childLocator, string name = null, ElementSupplier <T> supplier = null, ElementsCount expectedCount = ElementsCount.Any, ElementState state = ElementState.Displayed) where T : IElement { return(Factory.FindChildElements(this, childLocator, name, supplier, expectedCount, state)); }
protected override IList <T> FindElements <T>(By locator, string name = null, ElementSupplier <T> supplier = null, ElementsCount expectedCount = ElementsCount.Any, ElementState state = ElementState.Displayed) { return(ParentElement.FindChildElements(locator, name, supplier, expectedCount, state)); }
public IList <Label> GetChildElementsByDottedXPath(ElementState state, ElementsCount count) { return(FormElement.FindChildElements <Label>(DottedXPath, state: state, expectedCount: count)); }
public IList <Label> GetListElementsByDottedXPath(ElementState state, ElementsCount count) { return(ElementFactory.FindElements <Label>(DottedXPath, state: state, expectedCount: count)); }
public IList <Label> GetListElementsByCss(ElementState state, ElementsCount count) { return(ElementFactory.FindElements <Label>(ItemByCssSelector, state: state, expectedCount: count)); }
public IList <Label> GetListElementsByName(ElementState state, ElementsCount count) { return(ElementFactory.FindElements <Label>(InputByName, state: state, expectedCount: count)); }
public IList <Label> GetListElementsById(ElementState state, ElementsCount count) { return(ElementFactory.FindElements <Label>(BestSellersById, state: state, expectedCount: count)); }
public virtual IList <T> FindChildElements <T>(IElement parentElement, By childLocator, string name = null, ElementSupplier <T> supplier = null, ElementsCount expectedCount = ElementsCount.Any, ElementState state = ElementState.Displayed) where T : IElement { return(FindElements(GenerateAbsoluteChildLocator(parentElement.Locator, childLocator), name ?? $"Child element of {parentElement.Name}", supplier, expectedCount, state)); }
public void Should_BeImpossibleTo_FindNotExistElements_WithWrongArguments(ElementsCount count, ElementState state) { Assert.Throws <TimeoutException>( () => FindElements <Label>(NotExistElementLoc, expectedCount: count, state: state), $"Tried to find elements with expected count '{count}' and state '{state}'"); }
public static IList <Button> FindButtons(this IElementFactory elementFactory, By elementLocator, string name = null, ElementsCount elementsCount = ElementsCount.MoreThenZero) { return(elementFactory.FindElements(elementLocator, name: name, GetButtonSupplier(), elementsCount)); }