From e42484aea08850d1e417a945d07a1f0e676603ee Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Mon, 24 Aug 2020 18:37:46 +0200 Subject: [PATCH] no-jira: rewrite add resource for selenium tests --- src/test/java/org/olat/selenium/UserTest.java | 2 ++ .../page/course/CourseEditorPageFragment.java | 26 ++++++++++++------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/src/test/java/org/olat/selenium/UserTest.java b/src/test/java/org/olat/selenium/UserTest.java index 910cf054490..2420e563bb2 100644 --- a/src/test/java/org/olat/selenium/UserTest.java +++ b/src/test/java/org/olat/selenium/UserTest.java @@ -598,6 +598,8 @@ public class UserTest extends Deployments { //we are in administration browser.navigate().back(); //we are in user management + By userManagementCreateBy = By.cssSelector("ul.o_tools a.o_sel_useradmin_create"); + OOGraphene.waitElement(userManagementCreateBy, browser); browser.navigate().back(); //we are in "My courses", check OOGraphene.waitElement(NavigationPage.myCoursesAssertBy, browser); diff --git a/src/test/java/org/olat/selenium/page/course/CourseEditorPageFragment.java b/src/test/java/org/olat/selenium/page/course/CourseEditorPageFragment.java index aa0e31ae491..81c02d4f132 100644 --- a/src/test/java/org/olat/selenium/page/course/CourseEditorPageFragment.java +++ b/src/test/java/org/olat/selenium/page/course/CourseEditorPageFragment.java @@ -321,7 +321,7 @@ public class CourseEditorPageFragment { * @return Itself */ public CourseEditorPageFragment selectTabLearnContent() { - OOGraphene.selectTab("o_node_config", (b) -> { + OOGraphene.selectTab("o_node_config", b -> { for(By chooseRepoEntriesButton: chooseRepoEntriesButtonList) { List<WebElement> chooseRepoEntry = b.findElements(chooseRepoEntriesButton); if(!chooseRepoEntry.isEmpty()) { @@ -470,24 +470,31 @@ public class CourseEditorPageFragment { private CourseEditorPageFragment createResource(By chooseButton, String resourceTitle, String resourceType) { browser.findElement(chooseButton).click(); OOGraphene.waitBusy(browser); + OOGraphene.waitModalDialog(browser); + //popup - WebElement popup = browser.findElement(By.className("o_sel_search_referenceable_entries")); - popup.findElement(By.cssSelector("a.o_sel_repo_popup_my_resources")).click(); + By myResourcesBy = By.cssSelector(".modal-body .o_sel_search_referenceable_entries a.o_sel_repo_popup_my_resources"); + OOGraphene.waitElement(myResourcesBy, browser); + browser.findElement(myResourcesBy).click(); OOGraphene.waitBusy(browser); + By mySelectedResourcesBy = By.cssSelector(".modal-body .o_sel_search_referenceable_entries a.btn-primary.o_sel_repo_popup_my_resources"); + OOGraphene.waitElement(mySelectedResourcesBy, browser); //click create - List<WebElement> createEls = popup.findElements(By.className("o_sel_repo_popup_create_resource")); + By createResourceBy = By.cssSelector(".o_sel_search_referenceable_entries .o_sel_repo_popup_create_resource"); + List<WebElement> createEls = browser.findElements(createResourceBy); if(createEls.isEmpty()) { //open drop down - popup.findElement(By.className("o_sel_repo_popup_create_resources")).click(); + By createResourcesBy = By.cssSelector("button.o_sel_repo_popup_create_resources"); + browser.findElement(createResourcesBy).click(); //choose the right type By selectType = By.xpath("//ul[contains(@class,'o_sel_repo_popup_create_resources')]//a[contains(@onclick,'" + resourceType + "')]"); - popup.findElement(selectType).click(); - OOGraphene.waitBusy(browser); + OOGraphene.waitElement(selectType, browser); + browser.findElement(selectType).click(); } else { - popup.findElement(By.className("o_sel_repo_popup_create_resource")).click(); - OOGraphene.waitBusy(browser); + browser.findElement(createResourceBy).click(); } + OOGraphene.waitBusy(browser); //fill the create form return fillCreateForm(resourceTitle); @@ -496,6 +503,7 @@ public class CourseEditorPageFragment { private CourseEditorPageFragment fillCreateForm(String displayName) { OOGraphene.waitModalDialog(browser); By inputBy = By.cssSelector("div.modal.o_sel_author_create_popup div.o_sel_author_displayname input"); + OOGraphene.waitElement(inputBy, browser); browser.findElement(inputBy).sendKeys(displayName); By submitBy = By.cssSelector("div.modal.o_sel_author_create_popup .o_sel_author_create_submit"); browser.findElement(submitBy).click(); -- GitLab