public void LoginToSite() { XDocument doc = XDocument.Load(DataFileLocation); XElement settings = doc.Document.Element("Tests").Element("settings"); XElement testSettings = doc.Document.Element("Tests").Element("modules"); string testName = testSettings.Attribute("name").Value; _driver = StartBrowser(settings.Attribute("browser").Value); _baseUrl = settings.Attribute("baseURL").Value; Trace.WriteLine(BasePage.RunningTestKeyWord + "'" + testName + "'"); Trace.WriteLine(BasePage.PreconditionsKeyWord); OpenMainPageAndLoginAsHost(); //Create a Page var blankPage = new BlankPage(_driver); blankPage.OpenAddNewPageFrameUsingControlPanel(_baseUrl); blankPage.AddNewPage("page"); //Delete Default HTML Module on page blankPage.OpenUsingUrl(_baseUrl,"page"); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.LocationDescription["ContentPane"].IdWhenOnPage + Modules.CommonModulesDescription["HtmlModule"].IdWhenOnPage + "/a")).GetAttribute("name"); module.DeleteModule(moduleNumber); //Export new page as Default var pageExportPage = new PageExportPage(_driver); pageExportPage.OpenUsingControlPanel(_baseUrl + "/page"); pageExportPage.ExportPage("Default", "NewDefault"); //Create set of pages with New Default var adminPageManagementPage = new AdminPageManagementPage(_driver); adminPageManagementPage.OpenUsingButtons(_baseUrl); adminPageManagementPage.AddPagesInBulk(">" + "Page", "P1Modules", 65, AdminPageManagementPage.PageType.Web, "Home"); //Create set of pages for Drag&Drop tests with New Default adminPageManagementPage.OpenUsingButtons(_baseUrl); adminPageManagementPage.AddPagesInBulk(">" + "Page", "P1ModulesDragDrop", 65, AdminPageManagementPage.PageType.Web, "Home"); //Create a page with 4 HtmlModuleDictionary Modules on page blankPage.OpenUsingUrl(_baseUrl, "Home/P1Modules/Page61"); module.OpenModulePanelUsingControlPanel(); int i = 1; while (i < 5) { module.AddNewModuleUsingMenu(HtmlModuleDictionary.IdWhenOnBanner, HtmlModuleDictionary.IdWhenOnPage, "ContentPane"); i++; } _logContent = LogContent(); }
public void Test002_EditDefaultHTMLModuleOnPage() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Edit Default HTML Module on the Page'"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); blankPage.SetPageToEditMode(); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.CommonModulesDescription["HtmlModule"].IdWhenOnPage + "/a")).GetAttribute("name"); module.AddContentToHTMLModule(moduleNumber, _pageContent); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the Module content is present on the screen"); Assert.That( blankPage.FindElement(By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-')]//div[contains(@id, 'lblContent')]")). Text, Is.EqualTo(_pageContent)); }
public void Test003_EditModuleSettings() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Edit Module settings'"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.LocationDescription["LeftPane"].IdWhenOnPage + Modules.CommonModulesDescription["HtmlModule"].IdWhenOnPage + "/a")).GetAttribute("name"); module.ChangeModuleTitle(moduleNumber, _moduleTitle); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT a new Module Title is present on the page"); StringAssert.Contains(_moduleTitle.ToUpper(), blankPage.WaitForElement( By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-" + moduleNumber + "')]" + ControlPanelIDs.PageTitleID)).Text.ToUpper(), "The new Module Title is not saved correctly"); }
public void Test002_EditModule() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Add content to HTML Module'"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.LeftPaneID + Modules.HtmlModuleOnPage + "/a")).GetAttribute("name"); module.AddContentToHTMLModule(moduleNumber, _moduleContent); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the module Content is present on the page"); Assert.That(_moduleContent, Is.EqualTo( module.FindElement( By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-" + moduleNumber + "')]//div[contains(@id, 'lblContent')]")).Text)); }
public void DeleteModule(Dictionary<string, Modules.ModuleIDs> modulesDescription, string pageName, string moduleName, string location) { var module = new Modules(_driver); string moduleNameOnPage = modulesDescription[moduleName].IdWhenOnPage; string locationOnPage = Modules.LocationDescription[location].IdWhenOnPage; Trace.WriteLine(BasePage.RunningTestKeyWord + "'Delete the Module'"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, pageName); blankPage.SetPageToEditMode(); string moduleNumber = module.WaitForElement(By.XPath(locationOnPage + moduleNameOnPage + "/a")).GetAttribute("name"); module.DeleteModule(moduleNumber); blankPage.OpenUsingUrl(_baseUrl, pageName); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the module " + moduleNumber + " deleted"); Assert.IsFalse(module.ElementPresent(By.XPath(locationOnPage + moduleNameOnPage + "/a[@name = '" + moduleNumber + "']")), "The Module is not deleted correctly"); }
public void UpdateModuleSettings(string assyName, string pageClassName, string openMethod, Dictionary<string, Modules.ModuleIDs> modulesDescription) { BasePage currentPage = OpenPage(assyName, pageClassName, openMethod); currentPage.SetPageToEditMode(); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.LocationDescription["ContentPane"].IdWhenOnPage + modulesDescription[currentPage.PreLoadedModule].IdWhenOnPage + "/a")).GetAttribute("name"); module.ChangeModuleTitle(moduleNumber, "Module Updated Name"); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT a new Module Title is present on the page"); StringAssert.Contains("Module Updated Name".ToUpper(), currentPage.WaitForElement( By.XPath(modulesDescription[currentPage.PreLoadedModule].IdWhenOnPage + "//span[contains(@id, '_dnnTITLE_titleLabel')]")).Text.ToUpper(), "The new Module Title is not saved correctly"); }
public void EditContentOfExistingModuleWithCopy(string assyName, string moduleClassName, Dictionary<string, Modules.ModuleIDs> modulesDescription, string pageName, string moduleContent) { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Edit content to HTML Module'"); var module = new Modules(_driver); var mainPage = new MainPage(_driver); mainPage.OpenUsingUrl(_baseUrl); string moduleNameOnPage = modulesDescription["ContactUsModule"].IdWhenOnPage; string locationOnPage = Modules.LocationDescription["ContentPane"].IdWhenOnPage; Trace.WriteLine(BasePage.TraceLevelPage + "Find the original module number on 'Home' page"); string originalModuleNumber = mainPage.WaitForElement(By.XPath(Modules.LocationDescription["FooterRightPane"].IdWhenOnPage + "/div[last()]/a")).GetAttribute("name"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, pageName); blankPage.SetPageToEditMode(); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumberOnNewPage = module.WaitForElement(By.XPath(locationOnPage + moduleNameOnPage + "/a")).GetAttribute("name"); GetHTMLModule(assyName, moduleClassName, moduleNumberOnNewPage, moduleContent); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the module Content is present on the page"); Assert.That(moduleContent, Is.EqualTo( module.FindElement( By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-" + moduleNumberOnNewPage + "')]//div[contains(@id, 'lblContent')]")).Text)); mainPage.OpenUsingUrl(_baseUrl); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the module Content changed on 'Home' page"); Assert.That(moduleContent, Is.Not.EqualTo( module.WaitForElement( By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-" + originalModuleNumber + "')]//div[contains(@id, 'lblContent')]")).Text)); }
public void Test004_DeleteModule() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Delete the Module'"); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); var module = new Modules(_driver); Trace.WriteLine(BasePage.TraceLevelElement + "Find the Module number:"); string moduleNumber = module.WaitForElement(By.XPath(Modules.LocationDescription["LeftPane"].IdWhenOnPage + Modules.CommonModulesDescription["HtmlModule"].IdWhenOnPage + "/a")).GetAttribute("name"); module.DeleteModule(moduleNumber); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the module " + moduleNumber + " deleted"); Assert.IsFalse(module.ElementPresent(By.XPath("//div[contains(@class, 'DNN_HTML DnnModule-" + moduleNumber + "')]")), "The Module is not deleted correctly"); }