You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/01/23 15:38:29 UTC

svn commit: r1779945 - in /openmeetings/application: branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/ branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/ branches/3.2.x/openmeetings-web/src/test/ja...

Author: solomax
Date: Mon Jan 23 15:38:29 2017
New Revision: 1779945

URL: http://svn.apache.org/viewvc?rev=1779945&view=rev
Log:
[OPENMEETINGS-816] first step to sign-up test using wicket tester

Modified:
    openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
    openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java
    openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
    openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java

Modified: openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java (original)
+++ openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java Mon Jan 23 15:38:29 2017
@@ -22,11 +22,18 @@ import static org.apache.openmeetings.db
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
+import java.io.Serializable;
+import java.util.List;
+
 import org.apache.openmeetings.db.entity.user.User.Type;
 import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.After;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class AbstractWicketTester extends AbstractJUnitDefaults {
 	protected WicketTester tester;
 
@@ -53,4 +60,18 @@ public class AbstractWicketTester extend
 			tester.destroy();
 		}
 	}
+
+	public <T extends Serializable> ButtonAjaxBehavior getButtonBehavior(String path, String name) {
+		Args.notNull(path, "path");
+		Args.notNull(name, "name");
+		@SuppressWarnings("unchecked")
+		AbstractDialog<T> dialog = (AbstractDialog<T>)tester.getComponentFromLastRenderedPage(path);
+		List<ButtonAjaxBehavior> bl = dialog.getBehaviors(ButtonAjaxBehavior.class);
+		for (ButtonAjaxBehavior bb : bl) {
+			if (name.equals(bb.getButton().getName())) {
+				return bb;
+			}
+		}
+		return null;
+	}
 }

Modified: openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java (original)
+++ openmeetings/application/branches/3.1.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java Mon Jan 23 15:38:29 2017
@@ -18,16 +18,20 @@
  */
 package org.apache.openmeetings.test.web;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import org.apache.openmeetings.test.AbstractWicketTester;
-import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.pages.MainPage;
 import org.apache.openmeetings.web.pages.auth.SignInPage;
+import org.apache.wicket.feedback.ExactLevelFeedbackMessageFilter;
+import org.apache.wicket.feedback.FeedbackMessage;
 import org.apache.wicket.util.tester.FormTester;
 import org.junit.Test;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class LoginUI extends AbstractWicketTester {
 	@Test
 	public void testValidLogin() {
@@ -53,7 +57,21 @@ public class LoginUI extends AbstractWic
 		FormTester formTester = tester.newFormTester("signin:signin");
 		formTester.submit("submit");
 
-		tester.assertErrorMessages(String.format("'%s' is required.", Application.getString(114))
-				, String.format("'%s' is required.", Application.getString(115)));
+		assertEquals("There should be exactly 2 errors", 2,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
+	}
+
+
+	@Test
+	public void testEmptyRegister() {
+		tester.startPage(SignInPage.class);
+		tester.assertRenderedPage(SignInPage.class);
+
+		ButtonAjaxBehavior b = getButtonBehavior("signin", "register");
+		tester.executeBehavior(b);
+		FormTester formTester = tester.newFormTester("register:form");
+		formTester.submit("submit");
+		assertEquals("There should be exactly 7 errors", 7,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
 	}
 }

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java Mon Jan 23 15:38:29 2017
@@ -22,11 +22,18 @@ import static org.apache.openmeetings.db
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
+import java.io.Serializable;
+import java.util.List;
+
 import org.apache.openmeetings.db.entity.user.User.Type;
 import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.After;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class AbstractWicketTester extends AbstractJUnitDefaults {
 	protected WicketTester tester;
 
@@ -53,4 +60,18 @@ public class AbstractWicketTester extend
 			tester.destroy();
 		}
 	}
+
+	public <T extends Serializable> ButtonAjaxBehavior getButtonBehavior(String path, String name) {
+		Args.notNull(path, "path");
+		Args.notNull(name, "name");
+		@SuppressWarnings("unchecked")
+		AbstractDialog<T> dialog = (AbstractDialog<T>)tester.getComponentFromLastRenderedPage(path);
+		List<ButtonAjaxBehavior> bl = dialog.getBehaviors(ButtonAjaxBehavior.class);
+		for (ButtonAjaxBehavior bb : bl) {
+			if (name.equals(bb.getButton().getName())) {
+				return bb;
+			}
+		}
+		return null;
+	}
 }

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java Mon Jan 23 15:38:29 2017
@@ -18,16 +18,20 @@
  */
 package org.apache.openmeetings.test.web;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import org.apache.openmeetings.test.AbstractWicketTester;
-import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.pages.MainPage;
 import org.apache.openmeetings.web.pages.auth.SignInPage;
+import org.apache.wicket.feedback.ExactLevelFeedbackMessageFilter;
+import org.apache.wicket.feedback.FeedbackMessage;
 import org.apache.wicket.util.tester.FormTester;
 import org.junit.Test;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class LoginUI extends AbstractWicketTester {
 	@Test
 	public void testValidLogin() {
@@ -53,7 +57,21 @@ public class LoginUI extends AbstractWic
 		FormTester formTester = tester.newFormTester("signin:signin");
 		formTester.submit("submit");
 
-		tester.assertErrorMessages(String.format("'%s' is required.", Application.getString(114))
-				, String.format("'%s' is required.", Application.getString(115)));
+		assertEquals("There should be exactly 2 errors", 2,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
+	}
+
+
+	@Test
+	public void testEmptyRegister() {
+		tester.startPage(SignInPage.class);
+		tester.assertRenderedPage(SignInPage.class);
+
+		ButtonAjaxBehavior b = getButtonBehavior("signin", "register");
+		tester.executeBehavior(b);
+		FormTester formTester = tester.newFormTester("register:form");
+		formTester.submit("submit");
+		assertEquals("There should be exactly 7 errors", 7,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
 	}
 }

Modified: openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractWicketTester.java Mon Jan 23 15:38:29 2017
@@ -22,11 +22,18 @@ import static org.apache.openmeetings.db
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
+import java.io.Serializable;
+import java.util.List;
+
 import org.apache.openmeetings.db.entity.user.User.Type;
 import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.tester.WicketTester;
 import org.junit.After;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class AbstractWicketTester extends AbstractJUnitDefaults {
 	protected WicketTester tester;
 
@@ -53,4 +60,18 @@ public class AbstractWicketTester extend
 			tester.destroy();
 		}
 	}
+
+	public <T extends Serializable> ButtonAjaxBehavior getButtonBehavior(String path, String name) {
+		Args.notNull(path, "path");
+		Args.notNull(name, "name");
+		@SuppressWarnings("unchecked")
+		AbstractDialog<T> dialog = (AbstractDialog<T>)tester.getComponentFromLastRenderedPage(path);
+		List<ButtonAjaxBehavior> bl = dialog.getBehaviors(ButtonAjaxBehavior.class);
+		for (ButtonAjaxBehavior bb : bl) {
+			if (name.equals(bb.getButton().getName())) {
+				return bb;
+			}
+		}
+		return null;
+	}
 }

Modified: openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java?rev=1779945&r1=1779944&r2=1779945&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/test/java/org/apache/openmeetings/test/web/LoginUI.java Mon Jan 23 15:38:29 2017
@@ -18,16 +18,20 @@
  */
 package org.apache.openmeetings.test.web;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import org.apache.openmeetings.test.AbstractWicketTester;
-import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.pages.MainPage;
 import org.apache.openmeetings.web.pages.auth.SignInPage;
+import org.apache.wicket.feedback.ExactLevelFeedbackMessageFilter;
+import org.apache.wicket.feedback.FeedbackMessage;
 import org.apache.wicket.util.tester.FormTester;
 import org.junit.Test;
 
+import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
+
 public class LoginUI extends AbstractWicketTester {
 	@Test
 	public void testValidLogin() {
@@ -53,7 +57,21 @@ public class LoginUI extends AbstractWic
 		FormTester formTester = tester.newFormTester("signin:signin");
 		formTester.submit("submit");
 
-		tester.assertErrorMessages(String.format("'%s' is required.", Application.getString(114))
-				, String.format("'%s' is required.", Application.getString(115)));
+		assertEquals("There should be exactly 2 errors", 2,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
+	}
+
+
+	@Test
+	public void testEmptyRegister() {
+		tester.startPage(SignInPage.class);
+		tester.assertRenderedPage(SignInPage.class);
+
+		ButtonAjaxBehavior b = getButtonBehavior("signin", "register");
+		tester.executeBehavior(b);
+		FormTester formTester = tester.newFormTester("register:form");
+		formTester.submit("submit");
+		assertEquals("There should be exactly 7 errors", 7,
+				tester.getFeedbackMessages(new ExactLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
 	}
 }