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());
}
}