public void AssertItemExist(DesktopTreeType type, string name) { FindTreeItemsAndThen(type, name, items => { Assert.True(items.Any()); }); }
public void RightClickOnItem(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.RightClick(); }); }
public void AssertItemHighlighted(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.AssertIsHighlighted(); }); }
public void ClickItem(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); }); WaitUntilDesktopFooterIsDisplayed(); }
private void FindTreeItemAndThen(DesktopTreeType thingType, string thingName, Action <DesktopTreeNode> action) { var things = FindTreeItems(thingType, thingName); Assert.AreEqual(1, things.Count, "Expected there to be one {0} in the tree with name {1} but there was {2}.", thingType, thingName, things.Count); action(new DesktopTreeNode(Driver, Waiter, things.Single())); }
public void RightClickOnFolderAndSelectMenuOption(DesktopTreeType treeItemType, string folderName, string optionToSelect) { FindTreeItemAndThen(treeItemType, folderName, folder => { folder.Click(); folder.RightClick(); SelectContextMenuItem(optionToSelect); }); }
public void OpenItemPropertiesFromViewMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); SelectPropertiesFromViewMenu(); }); }
public void DeleteItemFromEditMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); SelectDeleteNodeFromEditMenu(); }); }
public void DeleteItemFromContextMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); item.RightClick(); SelectContextMenuItem("DeleteNode"); }); }
public void OpenItemDataHistoryFromContextMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.RightClick(); SelectContextMenuItem("ViewDataHistory"); Waiter.Until(d => !d.IsAjaxRequestInProgress()); }); }
public void ExpandItem(DesktopTreeType itemType, string itemName) { if (!FindTreeItems(itemType, itemName).First().FindElement(By.CssSelector("img.tree-expander")).GetAttribute("src").Contains("treeminus.gif")) { FindTreeItemAndThen(itemType, itemName, item => { item.Expand(); }); } }
public void OpenCopiedItemPropertiesFromViewMenu(DesktopTreeType itemType, string itemName) { FindTreeItemsAndThen(itemType, itemName, items => { Assert.AreEqual(2, items.Count, "Expected there to be two items of type {0} with name {1} but there was {2}.", itemType, itemName, items.Count); items.Last().Click(); SelectPropertiesFromViewMenu(); }); }
public void DeleteCopiedItemFromEditMenu(DesktopTreeType itemType, string itemName) { FindTreeItemsAndThen(itemType, itemName, items => { Assert.AreEqual(2, items.Count, "Expected there to be two folders with name {0} but there was {1}.", itemName, items.Count); items.Last().Click(); SelectDeleteNodeFromEditMenu(); }); }
public void PasteItemAschildFromEditMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); SelectPasteAsChildNodeFromEditMenu(); Thread.Sleep(500); Waiter.Until(d => !d.IsAjaxRequestInProgress()); }); }
public void OpenItemPropertiesFromContextMenu(DesktopTreeType itemType, string itemName) { FindTreeItemAndThen(itemType, itemName, item => { item.Click(); WaitUntilUiSpinnerIsNotDisplayed(); item.RightClick(); SelectContextMenuItem("Properties"); Driver.WaitForAjaxToComplete(); }); }
private List <IWebElement> FindTreeItems(DesktopTreeType thingType, string thingName) { WaitForTabPageToBeReady(); foreach (var imageName in GetImageNameFromTreeType(thingType)) { var things = Element.FindElements(By.CssSelector(string.Format("img[src*='{0}'] + span.tree-label", imageName))) .Where(f => f.Text == thingName).ToList(); if (things.Any()) { things = things.Select(f => f.FindElement(By .XPath(".."))) //select the parent element of the image, i.e. the div that contains the label, the image and the expander. .ToList(); return(things); } } return(new List <IWebElement>()); }
public void WaitUntilTreeItemDeleted(DesktopTreeType type, string name) { bool itemDeleted = false; for (var i = 0; i < 30; i++) { Thread.Sleep(1000); var items = FindTreeItems(type, name); if (items.Count == 0) { itemDeleted = true; break; } } if (!itemDeleted) { Assert.Fail("Item {0} with name {1} is still present in the tree when it was expected to be deleted.", type, name); } }
private List <string> GetImageNameFromTreeType(DesktopTreeType thingType) { var imageNames = new List <string>(); switch (thingType) { case DesktopTreeType.Folder: imageNames.Add("folderyellow.gif"); imageNames.Add("folderblue.gif"); break; case DesktopTreeType.Module: imageNames.Add("folderyellow.gif"); break; case DesktopTreeType.Activity: imageNames.Add("flagyellow.gif"); break; case DesktopTreeType.Process: imageNames.Add("flaskyellow.gif"); break; case DesktopTreeType.CostBreakdown: case DesktopTreeType.Escalation: case DesktopTreeType.FinancialAccount: case DesktopTreeType.Asset: case DesktopTreeType.Kpi: case DesktopTreeType.Requirement: imageNames.Add("document.gif"); break; default: throw new ArgumentException(string.Format("Could not find an image name for tree type {0}", thingType)); } return(imageNames); }
private void FindTreeItemsAndThen(DesktopTreeType thingType, string thingName, Action <List <DesktopTreeNode> > action) { var things = FindTreeItems(thingType, thingName); action(things.Select(f => new DesktopTreeNode(Driver, Waiter, f)).ToList()); }