keycloak-memoizeit
Changes
pom.xml 2(+1 -1)
Details
pom.xml 2(+1 -1)
diff --git a/pom.xml b/pom.xml
index 7d5ca67..cfe307f 100755
--- a/pom.xml
+++ b/pom.xml
@@ -249,7 +249,7 @@
<groupId>org.jboss.arquillian.graphene</groupId>
<artifactId>graphene-webdriver</artifactId>
<type>pom</type>
- <version>2.0.0.Beta2</version>
+ <version>2.0.0.Beta1</version>
</dependency>
</dependencies>
</dependencyManagement>
diff --git a/services/src/test/java/org/keycloak/services/email/EmailSenderTest.java b/services/src/test/java/org/keycloak/services/email/EmailSenderTest.java
index a2f0961..08354dd 100644
--- a/services/src/test/java/org/keycloak/services/email/EmailSenderTest.java
+++ b/services/src/test/java/org/keycloak/services/email/EmailSenderTest.java
@@ -1,6 +1,8 @@
package org.keycloak.services.email;
import java.io.IOException;
+import java.lang.Thread.UncaughtExceptionHandler;
+import java.net.SocketException;
import javax.mail.MessagingException;
import javax.mail.internet.AddressException;
@@ -33,6 +35,18 @@ public class EmailSenderTest {
@After
public void after() throws InterruptedException {
if (greenMail != null) {
+ // Suppress error from GreenMail on shutdown
+ Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
+ @Override
+ public void uncaughtException(Thread t, Throwable e) {
+ if (!(e.getCause() instanceof SocketException && t.getClass().getName()
+ .equals("com.icegreen.greenmail.smtp.SmtpHandler"))) {
+ System.err.print("Exception in thread \"" + t.getName() + "\" ");
+ e.printStackTrace(System.err);
+ }
+ }
+ });
+
greenMail.stop();
}
}
diff --git a/testsuite/src/test/java/org/keycloak/testsuite/GreenMailRule.java b/testsuite/src/test/java/org/keycloak/testsuite/GreenMailRule.java
new file mode 100644
index 0000000..ef1f107
--- /dev/null
+++ b/testsuite/src/test/java/org/keycloak/testsuite/GreenMailRule.java
@@ -0,0 +1,48 @@
+package org.keycloak.testsuite;
+
+import java.lang.Thread.UncaughtExceptionHandler;
+import java.net.SocketException;
+
+import javax.mail.internet.MimeMessage;
+
+import org.junit.rules.ExternalResource;
+
+import com.icegreen.greenmail.util.GreenMail;
+import com.icegreen.greenmail.util.ServerSetup;
+
+public class GreenMailRule extends ExternalResource {
+
+ private GreenMail greenMail;
+
+ @Override
+ protected void before() throws Throwable {
+ ServerSetup setup = new ServerSetup(3025, "localhost", "smtp");
+
+ greenMail = new GreenMail(setup);
+ greenMail.start();
+ }
+
+ @Override
+ protected void after() {
+ if (greenMail != null) {
+ // Suppress error from GreenMail on shutdown
+ Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
+ @Override
+ public void uncaughtException(Thread t, Throwable e) {
+ if (!(e.getCause() instanceof SocketException && t.getClass().getName()
+ .equals("com.icegreen.greenmail.smtp.SmtpHandler"))) {
+ System.err.print("Exception in thread \"" + t.getName() + "\" ");
+ e.printStackTrace(System.err);
+ }
+ }
+ });
+
+ greenMail.stop();
+ }
+ }
+
+ public MimeMessage[] getReceivedMessages() {
+ return greenMail.getReceivedMessages();
+ }
+
+}
diff --git a/testsuite/src/test/java/org/keycloak/testsuite/RequiredActionEmailVerificationTest.java b/testsuite/src/test/java/org/keycloak/testsuite/RequiredActionEmailVerificationTest.java
index afc308e..6ca1a01 100644
--- a/testsuite/src/test/java/org/keycloak/testsuite/RequiredActionEmailVerificationTest.java
+++ b/testsuite/src/test/java/org/keycloak/testsuite/RequiredActionEmailVerificationTest.java
@@ -34,7 +34,7 @@ import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.junit.After;
import org.junit.Assert;
-import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.keycloak.testsuite.pages.AppPage;
@@ -42,9 +42,6 @@ import org.keycloak.testsuite.pages.LoginPage;
import org.keycloak.testsuite.pages.RegisterPage;
import org.openqa.selenium.WebDriver;
-import com.icegreen.greenmail.util.GreenMail;
-import com.icegreen.greenmail.util.ServerSetup;
-
/**
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
*/
@@ -79,15 +76,8 @@ public class RequiredActionEmailVerificationTest {
@Page
protected RegisterPage registerPage;
- private GreenMail greenMail;
-
- @Before
- public void before() {
- ServerSetup setup = new ServerSetup(3025, "localhost", "smtp");
-
- greenMail = new GreenMail(setup);
- greenMail.start();
- }
+ @Rule
+ public GreenMailRule greenMail = new GreenMailRule();
@After
public void after() {
@@ -95,9 +85,6 @@ public class RequiredActionEmailVerificationTest {
if (appPage.isCurrent()) {
appPage.logout();
}
- if (greenMail != null) {
- greenMail.stop();
- }
}
@Test
diff --git a/testsuite/src/test/java/org/keycloak/testsuite/ResetPasswordTest.java b/testsuite/src/test/java/org/keycloak/testsuite/ResetPasswordTest.java
index c5dc1e3..53b859c 100644
--- a/testsuite/src/test/java/org/keycloak/testsuite/ResetPasswordTest.java
+++ b/testsuite/src/test/java/org/keycloak/testsuite/ResetPasswordTest.java
@@ -31,16 +31,12 @@ import org.jboss.arquillian.graphene.page.Page;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.spec.WebArchive;
-import org.junit.After;
import org.junit.Assert;
-import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.keycloak.testsuite.pages.ChangePasswordPage;
-import com.icegreen.greenmail.util.GreenMail;
-import com.icegreen.greenmail.util.ServerSetup;
-
/**
* @author <a href="mailto:sthorger@redhat.com">Stian Thorgersen</a>
*/
@@ -53,26 +49,12 @@ public class ResetPasswordTest extends AbstractDroneTest {
.addAsWebInfResource("web-properties-email-verfication.xml", "web.xml");
}
- private GreenMail greenMail;
+ @Rule
+ public GreenMailRule greenMail = new GreenMailRule();
@Page
protected ChangePasswordPage changePasswordPage;
- @Before
- public void before() {
- ServerSetup setup = new ServerSetup(3025, "localhost", "smtp");
-
- greenMail = new GreenMail(setup);
- greenMail.start();
- }
-
- @After
- public void after() {
- if (greenMail != null) {
- greenMail.stop();
- }
- }
-
@Test
public void resetPassword() throws IOException, MessagingException {
appPage.open();