From d4d09ce729f432919e1255d47987f54be3af4395 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Mon, 15 May 2017 14:15:23 +0200
Subject: [PATCH] OO-2754: update selnium tests

---
 .../org/olat/selenium/AssessmentTest.java     |  7 ++---
 .../org/olat/selenium/BusinessGroupTest.java  | 10 +++----
 .../java/org/olat/selenium/CourseTest.java    | 17 +++++------
 .../org/olat/selenium/PortfolioV2Test.java    |  7 ++---
 .../page/course/PublisherPageFragment.java    | 29 +++++++++++++++----
 5 files changed, 43 insertions(+), 27 deletions(-)

diff --git a/src/test/java/org/olat/selenium/AssessmentTest.java b/src/test/java/org/olat/selenium/AssessmentTest.java
index c081ddb8092..b8235fc47fb 100644
--- a/src/test/java/org/olat/selenium/AssessmentTest.java
+++ b/src/test/java/org/olat/selenium/AssessmentTest.java
@@ -53,7 +53,6 @@ import org.olat.selenium.page.course.GroupTaskConfigurationPage;
 import org.olat.selenium.page.course.GroupTaskPage;
 import org.olat.selenium.page.course.GroupTaskToCoachPage;
 import org.olat.selenium.page.course.MembersPage;
-import org.olat.selenium.page.course.PublisherPageFragment.Access;
 import org.olat.selenium.page.graphene.OOGraphene;
 import org.olat.selenium.page.group.GroupPage;
 import org.olat.selenium.page.qti.QTI12Page;
@@ -228,7 +227,7 @@ public class AssessmentTest {
 		//publish the course
 		courseEditor
 			.publish()
-			.quickPublish(Access.membersOnly);
+			.quickPublish(UserAccess.membersOnly);
 		
 		//open the course and see the test start page
 		CoursePageFragment courseRuntime = courseEditor
@@ -917,7 +916,7 @@ public class AssessmentTest {
 		
 		courseEditor
 			.publish()
-			.quickPublish(Access.guests);
+			.quickPublish(UserAccess.guest);
 		
 		MembersPage membersPage = courseEditor
 			.clickToolbarBack()
@@ -1101,7 +1100,7 @@ public class AssessmentTest {
 		
 		courseEditor
 			.publish()
-			.quickPublish(Access.membersOnly);
+			.quickPublish(UserAccess.membersOnly);
 		
 		MembersPage membersPage = courseEditor
 			.clickToolbarBack()
diff --git a/src/test/java/org/olat/selenium/BusinessGroupTest.java b/src/test/java/org/olat/selenium/BusinessGroupTest.java
index f0d66de6300..e32f2771982 100644
--- a/src/test/java/org/olat/selenium/BusinessGroupTest.java
+++ b/src/test/java/org/olat/selenium/BusinessGroupTest.java
@@ -51,10 +51,10 @@ import org.olat.selenium.page.course.CoursePageFragment;
 import org.olat.selenium.page.course.EnrollmentConfigurationPage;
 import org.olat.selenium.page.course.EnrollmentPage;
 import org.olat.selenium.page.course.MembersPage;
-import org.olat.selenium.page.course.PublisherPageFragment.Access;
 import org.olat.selenium.page.graphene.OOGraphene;
 import org.olat.selenium.page.group.GroupPage;
 import org.olat.selenium.page.group.MembersWizardPage;
+import org.olat.selenium.page.repository.RepositoryAccessPage.UserAccess;
 import org.olat.test.ArquillianDeployments;
 import org.olat.test.rest.UserRestClient;
 import org.olat.user.restapi.UserVO;
@@ -738,7 +738,7 @@ public class BusinessGroupTest {
 		//publish the course
 		courseEditor
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		courseEditor.clickToolbarBack();
 		
 		GroupPage authorGroup = navBar
@@ -856,7 +856,7 @@ public class BusinessGroupTest {
 		//publish the course
 		courseEditor
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		courseEditor.clickToolbarBack();
 		
 
@@ -967,7 +967,7 @@ public class BusinessGroupTest {
 		//publish the course
 		courseEditor
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		
 		GroupPage authorGroup = navBar
 			.openGroups(browser)
@@ -1099,7 +1099,7 @@ public class BusinessGroupTest {
 		//publish the course
 		courseEditor
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		
 		GroupPage authorGroup = navBar
 			.openGroups(browser)
diff --git a/src/test/java/org/olat/selenium/CourseTest.java b/src/test/java/org/olat/selenium/CourseTest.java
index cddbc2e56e5..4d9d44637f1 100644
--- a/src/test/java/org/olat/selenium/CourseTest.java
+++ b/src/test/java/org/olat/selenium/CourseTest.java
@@ -61,7 +61,6 @@ import org.olat.selenium.page.course.ForumCEPage;
 import org.olat.selenium.page.course.InfoMessageCEPage;
 import org.olat.selenium.page.course.MembersPage;
 import org.olat.selenium.page.course.PublisherPageFragment;
-import org.olat.selenium.page.course.PublisherPageFragment.Access;
 import org.olat.selenium.page.course.RemindersPage;
 import org.olat.selenium.page.forum.ForumPage;
 import org.olat.selenium.page.graphene.OOGraphene;
@@ -71,9 +70,9 @@ import org.olat.selenium.page.repository.CPPage;
 import org.olat.selenium.page.repository.FeedPage;
 import org.olat.selenium.page.repository.RepositoryAccessPage;
 import org.olat.selenium.page.repository.RepositoryAccessPage.UserAccess;
-import org.olat.selenium.page.user.UserToolsPage;
 import org.olat.selenium.page.repository.RepositoryEditDescriptionPage;
 import org.olat.selenium.page.repository.ScormPage;
+import org.olat.selenium.page.user.UserToolsPage;
 import org.olat.test.ArquillianDeployments;
 import org.olat.test.JunitTestHelper;
 import org.olat.test.rest.UserRestClient;
@@ -155,7 +154,7 @@ public class CourseTest {
 		publisher
 			.assertOnPublisher()
 			.next()
-			.selectAccess(Access.guests)
+			.selectAccess(UserAccess.guest)
 			.next()
 			.selectCatalog(false)
 			.next() // -> no problem found
@@ -428,7 +427,7 @@ public class CourseTest {
 			.createNode("st")
 			.nodeTitle(secondNodeTitle)
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		
 		// The user opens the course
 		LoginPage ryomouLoginPage = LoginPage.getLoginPage(ryomouBrowser, deploymentUrl);
@@ -1078,7 +1077,7 @@ public class CourseTest {
 		courseEditor
 			.publish()
 			.next()
-			.selectAccess(Access.guests)
+			.selectAccess(UserAccess.guest)
 			.next()
 			.selectCatalog(true)
 			.selectCategory(node1, node2_2)
@@ -1158,7 +1157,7 @@ public class CourseTest {
 		//publish
 		editor
 			.publish()
-			.quickPublish(Access.guests);
+			.quickPublish(UserAccess.registred);
 		editor.clickToolbarBack();
 		
 		course
@@ -1732,7 +1731,7 @@ public class CourseTest {
 			.nodeTitle(foTitle)
 		//publish the course
 			.publish()
-			.quickPublish(Access.users);
+			.quickPublish(UserAccess.registred);
 		
 		//go to the forum
 		courseEditor
@@ -1875,7 +1874,7 @@ public class CourseTest {
 		courseEditor
 			.publish()
 			.next()
-			.selectAccess(Access.guests)
+			.selectAccess(UserAccess.guest)
 			.next()
 			.selectCatalog(true)
 			.selectCategory(null, node1)
@@ -2014,7 +2013,7 @@ public class CourseTest {
 
 		courseEditor
 			.publish()
-			.quickPublish(Access.membersOnly);
+			.quickPublish(UserAccess.membersOnly);
 		courseEditor
 			.clickToolbarBack();
 		
diff --git a/src/test/java/org/olat/selenium/PortfolioV2Test.java b/src/test/java/org/olat/selenium/PortfolioV2Test.java
index f32a5f59ffd..ec19e8f5236 100644
--- a/src/test/java/org/olat/selenium/PortfolioV2Test.java
+++ b/src/test/java/org/olat/selenium/PortfolioV2Test.java
@@ -44,7 +44,6 @@ import org.olat.selenium.page.course.CourseEditorPageFragment;
 import org.olat.selenium.page.course.CoursePageFragment;
 import org.olat.selenium.page.course.MembersPage;
 import org.olat.selenium.page.course.PortfolioElementPage;
-import org.olat.selenium.page.course.PublisherPageFragment.Access;
 import org.olat.selenium.page.forum.ForumPage;
 import org.olat.selenium.page.graphene.OOGraphene;
 import org.olat.selenium.page.portfolio.BinderPage;
@@ -55,8 +54,8 @@ import org.olat.selenium.page.portfolio.EntryPage;
 import org.olat.selenium.page.portfolio.MediaCenterPage;
 import org.olat.selenium.page.portfolio.PortfolioV2HomePage;
 import org.olat.selenium.page.repository.AuthoringEnvPage;
-import org.olat.selenium.page.repository.FeedPage;
 import org.olat.selenium.page.repository.AuthoringEnvPage.ResourceType;
+import org.olat.selenium.page.repository.FeedPage;
 import org.olat.selenium.page.repository.RepositoryAccessPage.UserAccess;
 import org.olat.selenium.page.user.UserToolsPage;
 import org.olat.selenium.page.wiki.WikiPage;
@@ -184,7 +183,7 @@ public class PortfolioV2Test {
 			.selectTabLearnContent()
 			.choosePortfolio(binderTitle)
 			.publish()
-			.quickPublish(Access.membersOnly);
+			.quickPublish(UserAccess.membersOnly);
 	
 		MembersPage membersPage = courseEditor
 			.clickToolbarBack()
@@ -681,7 +680,7 @@ public class PortfolioV2Test {
 			.setScoreAuto(0.1f, 10.0f, 5.0f);
 		courseEditor
 			.publish()
-			.quickPublish(Access.membersOnly);
+			.quickPublish(UserAccess.membersOnly);
 	
 		MembersPage membersPage = courseEditor
 			.clickToolbarBack()
diff --git a/src/test/java/org/olat/selenium/page/course/PublisherPageFragment.java b/src/test/java/org/olat/selenium/page/course/PublisherPageFragment.java
index 45750dd021b..d3f3827a4cb 100644
--- a/src/test/java/org/olat/selenium/page/course/PublisherPageFragment.java
+++ b/src/test/java/org/olat/selenium/page/course/PublisherPageFragment.java
@@ -24,6 +24,7 @@ import java.util.List;
 import org.jboss.arquillian.drone.api.annotation.Drone;
 import org.junit.Assert;
 import org.olat.selenium.page.graphene.OOGraphene;
+import org.olat.selenium.page.repository.RepositoryAccessPage.UserAccess;
 import org.openqa.selenium.By;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebElement;
@@ -59,10 +60,10 @@ public class PublisherPageFragment {
 	
 
 	public void quickPublish() {
-		quickPublish(Access.guests);
+		quickPublish(UserAccess.guest);
 	}
 	
-	public void quickPublish(Access access) {
+	public void quickPublish(UserAccess access) {
 		assertOnPublisher()
 			.next()
 			.selectAccess(access)
@@ -92,9 +93,27 @@ public class PublisherPageFragment {
 		return this;
 	}
 	
-	public PublisherPageFragment selectAccess(Access access) {
-		WebElement select = browser.findElement(selectAccessBy);
-		new Select(select).selectByValue(access.getValue());
+	public PublisherPageFragment selectAccess(UserAccess access) {
+		if(access == UserAccess.none) {
+			By userSwitch = By.cssSelector("#o_cousersSwitch input[type='radio'][value='n']");
+			browser.findElement(userSwitch).click();
+			OOGraphene.waitBusy(browser);
+		} else {
+			By userSwitch = By.cssSelector("#o_cousersSwitch input[type='radio'][value='y']");
+			browser.findElement(userSwitch).click();
+			OOGraphene.waitBusy(browser);
+			
+			By publishForUserBy = By.cssSelector("#o_fiopublishedForUsers_SELBOX");
+			WebElement publishForUserEl = browser.findElement(publishForUserBy);
+			Select publishForUserSelect = new Select(publishForUserEl);
+			switch(access) {
+				case registred: publishForUserSelect.selectByValue("u"); break;
+				case guest: publishForUserSelect.selectByValue("g"); break;
+				case membersOnly: publishForUserSelect.selectByValue("m"); break;
+				default: {}
+			}
+			OOGraphene.waitBusy(browser);
+		}
 		return this;
 	}
 	
-- 
GitLab