public static IWebElement Tree_SubFolder_Toggle(IWebDriver driver, IWebElement parentFolder, string folderName, bool isExpand) { // var treeDiv_treeWrapper = driver.FindElement(By.Id("treeWrapper")); //http://stackoverflow.com/questions/27496980/xpath-to-find-the-first-child-if-a-sibling-contains-certain-text //---- //ul[contains(li,'Sample')]/li[1] //http://stackoverflow.com/questions/30407106/getting-next-sibling-element-using-xpath-and-selenium-for-java //string xPathForProjName = string.Format("./ul/li/a[contains(nobr,'{0}')]/a[1]", projectName); string xPathForProjName = string.Format("./ul/li/a/nobr[text()='{0}']", folderName); var nobr_Tag = parentFolder.FindElement(By.XPath(xPathForProjName)); var parent = nobr_Tag.FindElement(By.XPath("..")); //https://developer.mozilla.org/en-US/docs/Web/XPath/Axes IWebElement treeExpanderBtn = parent.FindElement(By.XPath("preceding-sibling::*")); var mainTreeNode_li = treeExpanderBtn.FindElement(By.XPath("..")); string classStr = mainTreeNode_li.GetAttribute("class"); if (isExpand) { //jstree-closed if this class is there then it is collapsed if (classStr.Contains("jstree-closed")) { treeExpanderBtn.Click(); classStr = mainTreeNode_li.GetAttribute("class"); if (classStr.Contains("jstree-closed")) { treeExpanderBtn.Click(); } DriverHelpers.WaitForSometime(driver); } } else { //jstree-open if this class is there then it is expanded hence we must collapse if (classStr.Contains("jstree-open")) { treeExpanderBtn.Click(); DriverHelpers.WaitForSometime(driver); } } ////////--now select the module //var xPathForModule = string.Format("./ul/li/a/nobr[text()='{0}']", directModuleName); //var a_tag_module_text = mainTreeNode_li.FindElement(By.XPath(xPathForModule)).FindElement(By.XPath("..")); //a_tag_module_text.Click(); return(mainTreeNode_li); }
public static IWebElement Tree_SelectLeafUnderFolder(IWebDriver driver, IWebElement parentTreeNode, string nodeName) { var xPathForModule = string.Format("./ul/li/a/nobr[text()='{0}']", nodeName); var node = parentTreeNode.FindElement(By.XPath(xPathForModule)).FindElement(By.XPath("..")); node.Click(); DriverHelpers.WaitForSometime(driver); return(node); }
public GenericFormPage Save_DynamicGridData() { var ele_popup_EditDynaGrid = this.IFrameDriver.FindElement(By.Id($"{DynamicGridName}_EditTemplate")); //format : TableDummy_EditTemplate var btnSave = ele_popup_EditDynaGrid.FindElement(By.CssSelector("input[type='submit'][value='Save']")); btnSave.Click(); DriverHelpers.WaitForSometime(this.IFrameDriver, 2); return(this.ParentFormReference); }
public static IWebElement Tree_SelectDirectNode(IWebDriver driver, string nodeName) { var treeDiv_treeWrapper = driver.FindElement(By.Id("treeWrapper")); string xPathForProjName = string.Format("./ul/li/a/nobr[text()='{0}']", nodeName); var nobr_Tag = treeDiv_treeWrapper.FindElement(By.XPath(xPathForProjName)); var li_node = nobr_Tag.FindElement(By.XPath("..")); li_node.Click(); DriverHelpers.WaitForSometime(driver); return(li_node); }
public static void Tree_Folder_Toggle(IWebDriver driver, IWebElement folderEleToExpandOrCollapse, bool isExpand) { var parent = folderEleToExpandOrCollapse; //https://developer.mozilla.org/en-US/docs/Web/XPath/Axes IWebElement treeExpanderBtn = parent.FindElement(By.XPath("preceding-sibling::*")); var mainTreeNode_li = treeExpanderBtn.FindElement(By.XPath("..")); string classStr = mainTreeNode_li.GetAttribute("class"); if (isExpand) { //jstree-closed if this class is there then it is collapsed if (classStr.Contains("jstree-closed")) { treeExpanderBtn.Click(); classStr = mainTreeNode_li.GetAttribute("class"); if (classStr.Contains("jstree-closed")) { treeExpanderBtn.Click(); } DriverHelpers.WaitForSometime(driver); } } else { //jstree-open if this class is there then it is expanded hence we must collapse if (classStr.Contains("jstree-open")) { treeExpanderBtn.Click(); DriverHelpers.WaitForSometime(driver); } } }