public void Mouse_click_will_fail_because_hidden_link_is_matched_instead_of_visible_link() { // Playback.PlaybackSettings.SmartMatchOptions = SmartMatchOptions.None; // tried Sudhish Mathuria's suggestion var example2Path = Path.Combine(TestContext.TestDeploymentDir, "example2.htm"); var window = BrowserWindow.Launch(example2Path); var document = new HtmlDocument(window); document.FilterProperties[HtmlDocument.PropertyNames.Title] = "2ad6de55-75f1-403f-8fcb-1d5defac9786"; var visibleLink = new HtmlHyperlink(document); visibleLink.SearchProperties[HtmlHyperlink.PropertyNames.InnerText] = "Hello"; // ONLY FIND VISIBLE CONTROLS ! visibleLink.SearchConfigurations.Add(SearchConfiguration.VisibleOnly); var allMatches = visibleLink.FindMatchingControls(); Assert.AreEqual(2, allMatches.Count, "Should be two matching."); visibleLink.Find(); // THIS SHOULD BE THE VISIBLE ONE Debug.WriteLine("BoundingRectangle: " + visibleLink.BoundingRectangle); Assert.IsTrue(visibleLink.BoundingRectangle.Width > 0, "Width should positive."); Assert.IsTrue(visibleLink.BoundingRectangle.Height > 0, "Height should positive."); Mouse.Click(visibleLink); }
public void NavigateDailyPlans() { var uiLinkDailyPlans = new HtmlHyperlink(browser); uiLinkDailyPlans.SearchProperties.Add(HtmlControl.PropertyNames.Id, IndexDailyPlanPageConst.MENU_DAILY_PLAN_LINK_ID); uiLinkDailyPlans.Find(); Mouse.Click(uiLinkDailyPlans); }
public void NavigateToProjects() { var uiLinkProjects = new HtmlHyperlink(browser); uiLinkProjects.SearchProperties.Add(HtmlControl.PropertyNames.Id, IndexPageConst.MENU_PROJECT_LINK_ID); uiLinkProjects.Find(); Mouse.Click(uiLinkProjects); }
public ProjectDetailsPage NavigateToProjectDetails() { var uiLinkDetails = new HtmlHyperlink(browser); uiLinkDetails.SearchProperties.Add(HtmlControl.PropertyNames.Class, WorkItemDetailsPageConst.DETAILS_PROJECT_LINK_ID); uiLinkDetails.Find(); Mouse.Click(uiLinkDetails); return(new ProjectDetailsPage(browser)); }
public EditWorkItemPage NavigateToEditPage() { var uiLinkEdit = new HtmlHyperlink(browser); uiLinkEdit.SearchProperties.Add(HtmlControl.PropertyNames.Class, WorkItemDetailsPageConst.DETAILS_EDIT_LINK_ID); uiLinkEdit.Find(); Mouse.Click(uiLinkEdit); return(new EditWorkItemPage(browser)); }
public EditProjectPage NavigateToEditProject() { var uiLinkEdit = new HtmlHyperlink(new HtmlTable(browser)); uiLinkEdit.SearchProperties.Add(HtmlControl.PropertyNames.Class, ProjectsPageConst.INDEX_EDIT_LINK_CLASS); uiLinkEdit.Find(); Mouse.Click(uiLinkEdit); return(new EditProjectPage(browser)); }
public ProjectsPage NavigateToProjectsPage() { var uiLinkDetails = new HtmlHyperlink(browser); uiLinkDetails.SearchProperties.Add(HtmlControl.PropertyNames.Id, ProjectDetailsPageConst.DETAILS_BACK_TO_LIST_LINK_ID); uiLinkDetails.Find(); Mouse.Click(uiLinkDetails); return(new ProjectsPage(browser)); }
public WorkItemDetailsPage NavigateToWorkItemDetails() { var uiLinkDetails = new HtmlHyperlink(browser); uiLinkDetails.SearchProperties.Add(HtmlControl.PropertyNames.Class, ProjectDetailsPageConst.DETAILS_WORKITEM_LINK_CLASS); uiLinkDetails.Find(); Mouse.Click(uiLinkDetails); return(new WorkItemDetailsPage(browser)); }
public DailyPlansPage NavigateBackToList() { var uiLinkList = new HtmlHyperlink(browser); uiLinkList.SearchProperties.Add(HtmlControl.PropertyNames.Id, DetailsDailyPlanPageConst.DETAILS_BACK_TO_LIST_LINK_ID); uiLinkList.Find(); Mouse.Click(uiLinkList); return(new DailyPlansPage(browser)); }
public EditProjectPage NavigateToEditProject() { var uiLinkEdit = new HtmlHyperlink(new HtmlTable(browser)); uiLinkEdit.SearchProperties.Add(HtmlControl.PropertyNames.Id, ProjectDetailsPageConst.DETAILS_EDIT_PROJECT_LINK_ID); uiLinkEdit.Find(); Mouse.Click(uiLinkEdit); return(new EditProjectPage(browser)); }
public AddWorkItemPage NavigateToAddWorkItem() { var uiLinkAdd = new HtmlHyperlink(browser); uiLinkAdd.SearchProperties.Add(HtmlControl.PropertyNames.Id, ProjectDetailsPageConst.DETAILS_ADD_WORKITEM_LINK_ID); uiLinkAdd.Find(); Mouse.Click(uiLinkAdd); return(new AddWorkItemPage(browser)); }
public DetailsDailyPlanPage NavigateToDetailsDailyPlan() { var uiDetails = new HtmlHyperlink(browser); uiDetails.SearchProperties.Add(HtmlControl.PropertyNames.Id, DailyPlanPageConst.INDEX_DAILYPLAN_DETAILS_LINK_ID); uiDetails.Find(); Mouse.Click(uiDetails); return(new DetailsDailyPlanPage(browser)); }
public WorkItemDetailsPage NavigateToDetailsDayBeforeWorkItem() { var uiWITodayDetails = new HtmlHyperlink(browser); uiWITodayDetails.SearchProperties.Add(HtmlControl.PropertyNames.Class, DailyPlanPageConst.INDEX_DAILY_PLAN_DAY_BEFORE_DETAILS_LINK_CLASS); uiWITodayDetails.Find(); Mouse.Click(uiWITodayDetails); return(new WorkItemDetailsPage(browser)); }
public AddDailyPlanPage NavigateToAddDailyPlan() { var uiLinkDailyPlans = new HtmlHyperlink(browser); uiLinkDailyPlans.SearchProperties.Add(HtmlControl.PropertyNames.Id, AddDailyPlanPageConst.INDEX_DAILY_PLAN_ADD_LINK_ID); uiLinkDailyPlans.Find(); Mouse.Click(uiLinkDailyPlans); return(new AddDailyPlanPage(browser)); }
public EditDailyPlanPage NavigateToEditDailyPlan() { var uiLinkAdd = new HtmlHyperlink(browser); uiLinkAdd.SearchProperties.Add(HtmlControl.PropertyNames.Id, EditDailyPlanPageConst.INDEX_DAILY_PLAN_EDIT_LINK_ID); uiLinkAdd.Find(); Mouse.Click(uiLinkAdd); return(new EditDailyPlanPage(browser)); }
public DeleteProjectPage DeleteProject() { var uiLinkDelete = new HtmlHyperlink(browser); uiLinkDelete.SearchProperties.Add(HtmlControl.PropertyNames.Class, ProjectsPageConst.INDEX_DELETE_LINK_CLASS); uiLinkDelete.Find(); Mouse.Click(uiLinkDelete); return(new DeleteProjectPage(browser)); }
public AddProjectPage NavigateToAddProject() { var uiLinkAdd = new HtmlHyperlink(browser); uiLinkAdd.SearchProperties.Add(HtmlControl.PropertyNames.Id, ProjectsPageConst.INDEX_ADD_LINK_ID); uiLinkAdd.Find(); Mouse.Click(uiLinkAdd); return(new AddProjectPage(browser)); }
public MyMetricsPage VerifyMyMetricsPageReached() { try { var createNewLink = new HtmlHyperlink(_browser); createNewLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.InnerText, "CreateNew"); createNewLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.AbsolutePath, "/MyMetricsPage/Create"); createNewLink.Find(); } catch (Exception e) { Assert.Fail("Could not find create new link and verify my metrics page reached: " + e.Message); } return(this); }
public CreatePage ClickCreateNewLink() { try { var createNewLink = new HtmlHyperlink(_browser); createNewLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.InnerText, "CreateNew"); createNewLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.AbsolutePath, "/FoodLogEntries/Create"); createNewLink.Find(); Mouse.Click(createNewLink); } catch (Exception e) { Assert.Fail("Could not find create new link and verify nutrition page reached: " + e.Message); } return(new CreatePage(_browser)); }
public MyMetricsPage ClickMyMetricsLink() { try { var myMetricsLink = new HtmlHyperlink(_browser); myMetricsLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.InnerText, "My Metrics"); myMetricsLink.Find(); Mouse.Click(myMetricsLink); } catch (Exception e) { Assert.Fail("Could not find My Metrics link: " + e.Message); } return(new MyMetricsPage(_browser)); }
public NutritionPage ClickNutritionLink() { try { var nutritionLink = new HtmlHyperlink(_browser); nutritionLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.InnerText, "Nutrition"); nutritionLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.AbsolutePath, "/FoodLogEntries"); nutritionLink.Find(); Mouse.Click(nutritionLink); } catch (Exception e) { Assert.Fail("Could not find nutrition link: " + e.Message); } return(new NutritionPage(_browser)); }
public ExercisePage ClickExercisesLink() { try { var excercisesLink = new HtmlHyperlink(_browser); excercisesLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.Href, "/Exercises"); excercisesLink.SearchProperties.Add(HtmlHyperlink.PropertyNames.InnerText, "Excerciese"); excercisesLink.Find(); Mouse.Click(excercisesLink); } catch (Exception e) { Assert.Fail("Could not find excercises link: " + e.Message); } return(new ExcercisePage(_browser)); }