/// <summary> /// Navigate on page on the frontend /// </summary> public void NavigateToPage(string page) { HtmlDiv frontendPageMainDiv = BAT.Wrappers().Frontend().Pages().PagesWrapperFrontend().GetPageContent(); HtmlUnorderedList pagination = frontendPageMainDiv.Find.ByExpression <HtmlUnorderedList>("tagname=ul", "class=pagination") .AssertIsPresent("Pagination"); HtmlListItem listItem = pagination.ChildNodes.Where(i => i.InnerText.Contains(page)).FirstOrDefault().As <HtmlListItem>(); listItem.AssertIsPresent <HtmlListItem>("List Item"); HtmlAnchor link = listItem.Find.ByExpression <HtmlAnchor>("InnerText=" + page); link.Click(); }
private HtmlAnchor GetPageLinkByTitleFromBootstrapNavigation(string cssClass, string pageTitle) { HtmlUnorderedList list = this.EM.Navigation.NavigationWidgetFrontend.GetBootstrapNavigation(cssClass) .AssertIsNotNull("list"); HtmlListItem listItem = list.ChildNodes.Where(i => i.InnerText.Contains(pageTitle)).FirstOrDefault().As <HtmlListItem>(); listItem.AssertIsPresent <HtmlListItem>("List Item"); HtmlAnchor link = listItem.Find.ByExpression <HtmlAnchor>("InnerText=" + pageTitle); if (link == null || !link.IsVisible()) { throw new ArgumentNullException("Link not found"); } else { return(link); } }