This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push:
new 3122b13 [OPENMEETINGS-1850] tests are partially fixed
3122b13 is described below
commit 3122b13cdb5a5c5d6d2242e36bf6fea7690eb974
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Wed Mar 14 10:56:22 2018 +0700
[OPENMEETINGS-1850] tests are partially fixed
---
.../java/org/apache/openmeetings/IApplication.java | 3 +--
.../apache/openmeetings/web/app/Application.java | 19 ++++++++--------
.../apache/openmeetings/AbstractJUnitDefaults.java | 8 +++++--
.../apache/openmeetings/AbstractWicketTester.java | 17 ++++-----------
.../webservice/AbstractWebServiceTest.java | 25 ----------------------
5 files changed, 20 insertions(+), 52 deletions(-)
diff --git
a/openmeetings-db/src/main/java/org/apache/openmeetings/IApplication.java
b/openmeetings-db/src/main/java/org/apache/openmeetings/IApplication.java
index e107dfd..07ad9c5 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/IApplication.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/IApplication.java
@@ -23,7 +23,6 @@ import java.util.function.Supplier;
import javax.servlet.ServletContext;
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.entity.room.Invitation;
import org.apache.openmeetings.util.ws.IClusterWsMessage;
import org.apache.wicket.request.IExceptionMapper;
@@ -48,7 +47,7 @@ public interface IApplication {
String getServerId();
//JPA
- void updateJpaAddresses(ConfigurationDao dao);
+ void updateJpaAddresses();
//WS
void publishWsTopic(IClusterWsMessage msg);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
index 01b3587..cb917c2 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
@@ -35,7 +35,6 @@ import static
org.apache.openmeetings.web.pages.HashPage.INVITATION_HASH;
import static
org.apache.openmeetings.web.user.rooms.RoomEnterBehavior.getRoomUrlFragment;
import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES;
import static org.apache.wicket.resource.JQueryResourceReference.getV3;
-import static
org.springframework.web.context.support.WebApplicationContextUtils.getWebApplicationContext;
import java.io.File;
import java.net.UnknownHostException;
@@ -123,7 +122,6 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component;
-import org.springframework.web.context.WebApplicationContext;
import org.wicketstuff.dashboard.WidgetRegistry;
import org.wicketstuff.dashboard.web.DashboardContext;
import org.wicketstuff.dashboard.web.DashboardContextInjector;
@@ -167,6 +165,8 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
private ConfigurationDao cfgDao;
@Autowired
private RecordingDao recordingDao;
+ @Autowired
+ private UserDao userDao;
@Override
protected void init() {
@@ -190,7 +190,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
String serverId =
evt.getMember().getStringAttribute(NAME_ATTR_KEY);
getBean(ClientManager.class).clean(serverId);
getBean(StreamClientManager.class).clean(serverId);
-
updateJpaAddresses(_getBean(ConfigurationDao.class));
+ updateJpaAddresses();
}
@Override
@@ -201,7 +201,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
@Override
public void memberAdded(MembershipEvent evt) {
//server added, need to process persistent
addresses
-
updateJpaAddresses(_getBean(ConfigurationDao.class));
+ updateJpaAddresses();
//check for duplicate instance-names
Set<String> names = new HashSet<>();
for (Member m : evt.getMembers()) {
@@ -293,7 +293,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
// Init properties
setXFrameOptions(cfgDao.getString(CONFIG_HEADER_XFRAME,
HEADER_XFRAME_SAMEORIGIN));
setContentSecurityPolicy(cfgDao.getString(CONFIG_HEADER_CSP, HEADER_CSP_SELF));
- updateJpaAddresses(cfgDao);
+ updateJpaAddresses();
setExtProcessTtl(cfgDao.getInt(CONFIG_EXT_PROCESS_TTL,
getExtProcessTtl()));
Version.logOMStarted();
recordingDao.resetProcessingStatus(); //we are starting
so all processing recordings are now errors
@@ -378,8 +378,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
}
public <T> T _getBean(Class<T> clazz) {
- WebApplicationContext wac =
getWebApplicationContext(getServletContext());
- return wac == null ? null : wac.getBean(clazz);
+ return ctx == null ? null : ctx.getBean(clazz);
}
public static String getString(String id) {
@@ -421,7 +420,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
public static boolean isInstalled() {
boolean result = isInstalled;
if (!isInstalled && isInitComplete()) {
- isInstalled = result =
get()._getBean(UserDao.class).count() > 0;
+ isInstalled = result = get().userDao.count() > 0;
}
return result;
}
@@ -543,7 +542,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
}
@Override
- public void updateJpaAddresses(ConfigurationDao dao) {
+ public void updateJpaAddresses() {
StringBuilder sb = new StringBuilder();
String delim = "";
for (Member m : hazelcast.getCluster().getMembers()) {
@@ -554,7 +553,7 @@ public class Application extends
AuthenticatedWebApplication implements IApplica
sb.append("localhost");
}
try {
- dao.updateClusterAddresses(sb.toString());
+ cfgDao.updateClusterAddresses(sb.toString());
} catch (UnknownHostException e) {
log.error("Uexpected exception while updating JPA
addresses", e);
throw new WicketRuntimeException(e);
diff --git
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
index 635d3c0..8906829 100644
---
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
+++
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractJUnitDefaults.java
@@ -39,8 +39,8 @@ import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.installation.ImportInitvalues;
import org.apache.openmeetings.installation.InstallationConfig;
import org.junit.Before;
-import org.slf4j.LoggerFactory;
import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
public abstract class AbstractJUnitDefaults extends AbstractSpringTest {
@@ -69,7 +69,11 @@ public abstract class AbstractJUnitDefaults extends
AbstractSpringTest {
@Before
public void setUp() throws Exception {
setWicketApplicationName(DEFAULT_CONTEXT_NAME);
- cfgDao.reinit();
+ try {
+ cfgDao.reinit();
+ } catch (Exception e) {
+ log.warn("DB seems not to be inited", e);
+ }
if (userDao.count() < 1) {
makeDefaultScheme();
// regular user
diff --git
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
index 14847db..325bcbd 100644
---
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
+++
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTester.java
@@ -26,14 +26,12 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import static
org.springframework.web.context.WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE;
import java.io.Serializable;
import java.util.List;
import java.util.Locale;
import java.util.function.Consumer;
-import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import org.apache.openmeetings.db.entity.user.User;
@@ -56,7 +54,6 @@ import org.junit.Assert;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.context.support.XmlWebApplicationContext;
import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
import com.googlecode.wicket.jquery.ui.widget.dialog.ButtonAjaxBehavior;
@@ -75,32 +72,26 @@ public class AbstractWicketTester extends
AbstractJUnitDefaults {
}
public static WicketTester getWicketTester(Application app, long
langId) {
- if (app.getName() == null) {
+ boolean testerNeedInit = app.getName() != null;
+ if (!testerNeedInit) {
//FIXME TODO re-use this for templates
app.setName(getWicketApplicationName());
app.setServletContext(new MockServletContext(app,
null));
app.setConfigurationType(RuntimeConfigurationType.DEPLOYMENT);
- ServletContext sc = app.getServletContext();
OMContextListener omcl = new OMContextListener();
- omcl.contextInitialized(new ServletContextEvent(sc));
+ omcl.contextInitialized(new
ServletContextEvent(app.getServletContext()));
ThreadContext.setApplication(app);
app.initApplication();
}
ensureApplication(langId); // to ensure WebSession is attached
- WicketTester tester = new WicketTester(app,
app.getServletContext());
+ WicketTester tester = new WicketTester(app,
app.getServletContext(), testerNeedInit);
setInitComplete(true);
return tester;
}
public static void destroy(WicketTester tester) {
if (tester != null) {
- ServletContext sc = tester.getServletContext();
- try {
-
((XmlWebApplicationContext)sc.getAttribute(ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE)).close();
- } catch (Exception e) {
- log.error("Unexpected error while destroying
XmlWebApplicationContext", e);
- }
tester.destroy();
}
}
diff --git
a/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
b/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
index 6e3ec32..562d132 100644
---
a/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
+++
b/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
@@ -19,7 +19,6 @@
package org.apache.openmeetings.webservice;
import static javax.ws.rs.core.MediaType.APPLICATION_FORM_URLENCODED;
-import static org.apache.openmeetings.AbstractWicketTester.getWicketTester;
import static org.apache.openmeetings.util.OmFileHelper.getOmHome;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
@@ -52,15 +51,10 @@ import org.apache.openmeetings.db.dto.room.RoomDTO;
import org.apache.openmeetings.db.dto.user.UserDTO;
import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.user.User;
-import org.apache.openmeetings.web.app.Application;
-import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.webservice.util.AppointmentMessageBodyReader;
-import org.apache.wicket.util.tester.WicketTester;
-import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.BeforeClass;
-import org.springframework.beans.factory.annotation.Autowired;
public class AbstractWebServiceTest extends AbstractJUnitDefaults {
private static Tomcat tomcat;
@@ -72,10 +66,6 @@ public class AbstractWebServiceTest extends
AbstractJUnitDefaults {
private static final String FILE_SERVICE_MOUNT = "file";
public static final String UNIT_TEST_EXT_TYPE = "om_unit_tests";
public static final long TIMEOUT = 5 * 60 * 1000;
- protected WicketTester tester;
-
- @Autowired
- private Application app;
public static WebClient getClient(String url) {
WebClient c = WebClient.create(url, Arrays.asList(new
AppointmentMessageBodyReader()))
@@ -121,21 +111,6 @@ public class AbstractWebServiceTest extends
AbstractJUnitDefaults {
port = tomcat.getConnector().getLocalPort();
}
- @Override
- public void setUp() throws Exception {
- super.setUp();
- tester = getWicketTester(app);
- assertNotNull("Web session should not be null",
WebSession.get());
- }
-
- @After
- public void tearDown() {
- if (tester != null) {
- //can be null in case exception on initialization
- tester.destroy();
- }
- }
-
@AfterClass
public static void destroy() throws Exception {
if (tomcat.getServer() != null && tomcat.getServer().getState()
!= LifecycleState.DESTROYED) {
--
To stop receiving notification emails like this one, please contact
[email protected].