Author: dblevins
Date: Wed Apr 6 00:09:42 2011
New Revision: 1089283
URL: http://svn.apache.org/viewvc?rev=1089283&view=rev
Log:
Test case for the not fully implemented global namespace support OPENEJB-1140
Added:
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/GlobalLookupScopesTest.java
- copied, changed from r1089160,
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/JavaLookupScopesTest.java
Copied:
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/GlobalLookupScopesTest.java
(from r1089160,
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/JavaLookupScopesTest.java)
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/GlobalLookupScopesTest.java?p2=openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/GlobalLookupScopesTest.java&p1=openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/JavaLookupScopesTest.java&r1=1089160&r2=1089283&rev=1089283&view=diff
==============================================================================
---
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/JavaLookupScopesTest.java
(original)
+++
openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/ivm/naming/GlobalLookupScopesTest.java
Wed Apr 6 00:09:42 2011
@@ -19,7 +19,7 @@ package org.apache.openejb.core.ivm.nami
import junit.framework.TestCase;
import org.apache.openejb.AppContext;
import org.apache.openejb.BeanContext;
-import org.apache.openejb.ModuleContext;
+import org.apache.openejb.OpenEJBException;
import org.apache.openejb.assembler.classic.Assembler;
import org.apache.openejb.assembler.classic.SecurityServiceInfo;
import org.apache.openejb.assembler.classic.TransactionServiceInfo;
@@ -28,127 +28,70 @@ import org.apache.openejb.config.Configu
import org.apache.openejb.config.EjbModule;
import org.apache.openejb.jee.EjbJar;
import org.apache.openejb.jee.SingletonBean;
+import org.apache.openejb.loader.SystemInstance;
import javax.annotation.Resource;
-import javax.ejb.EJBContext;
-import javax.ejb.TimerService;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
-import javax.transaction.TransactionManager;
-import javax.transaction.TransactionSynchronizationRegistry;
-import javax.xml.ws.WebServiceContext;
+import java.io.IOException;
/**
* @version $Rev$ $Date$
*/
-public class JavaLookupScopesTest extends TestCase {
+public class GlobalLookupScopesTest extends TestCase {
- public void test() throws Exception {
-
- AppContext app;
- {
- ConfigurationFactory config = new ConfigurationFactory();
- Assembler assembler = new Assembler();
-
-
assembler.createTransactionManager(config.configureService(TransactionServiceInfo.class));
-
assembler.createSecurityService(config.configureService(SecurityServiceInfo.class));
-
- // Setup the descriptor information
-
- EjbJar ejbJar = new EjbJar("testmodule");
- ejbJar.addEnterpriseBean(new SingletonBean(Bean.class));
-
- // Deploy the bean a second time to simulate situations
- // where the same java:module java:app java:global names
- // are re-declared in a compatible way
- ejbJar.addEnterpriseBean(new SingletonBean("Other", Bean.class));
+ public void testNothing() {
+ }
- EjbModule ejbModule = new EjbModule(ejbJar);
- AppModule module = new AppModule(ejbModule);
- app =
assembler.createApplication(config.configureApplication(module));
- }
+ // TODO We need this for
https://issues.apache.org/jira/browse/OPENEJB-1140
+ public void _test() throws Exception {
- BeanContext bean = app.getDeployments().get(0);
+ SystemInstance.get().setProperty("openejb.deploymentId.format",
"{appId}/{moduleId}/{ejbName}");
- ModuleContext module = bean.getModuleContext();
+ ConfigurationFactory config = new ConfigurationFactory();
+ Assembler assembler = new Assembler();
+
assembler.createTransactionManager(config.configureService(TransactionServiceInfo.class));
+
assembler.createSecurityService(config.configureService(SecurityServiceInfo.class));
- { // app context lookups
- Context context = app.getAppJndiContext();
- assertTrue(context.lookup("app") instanceof Context);
- assertTrue(context.lookup("app/AppName") instanceof String);
- assertTrue(context.lookup("app/green") instanceof DataSource);
- assertTrue(context.lookup("app/testmodule") instanceof Context);
- assertTrue(context.lookup("app/testmodule/Bean") instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Bean!" +
Bean.class.getName()) instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Other") instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Other!" +
Bean.class.getName()) instanceof Bean);
+ AppContext circleApp = createApp("circle", config, assembler);
+ AppContext squareApp = createApp("square", config, assembler);
- assertEquals("testmodule", context.lookup("app/AppName"));
- }
-
- { // module context lookups
- Context context = module.getModuleJndiContext();
+ {
+ BeanContext bean = squareApp.getDeployments().get(0);
- assertTrue(context.lookup("module") instanceof Context);
- assertTrue(context.lookup("module/ModuleName") instanceof String);
- assertTrue(context.lookup("module/blue") instanceof DataSource);
- assertTrue(context.lookup("module/Bean") instanceof Bean);
- assertTrue(context.lookup("module/Bean!" + Bean.class.getName())
instanceof Bean);
+ Context context = bean.getJndiContext();
- assertEquals("testmodule", context.lookup("module/ModuleName"));
+ assertTrue(context.lookup("global/square") instanceof Context);
+ assertTrue(context.lookup("global/square/Bean") instanceof Bean);
+ assertTrue(context.lookup("global/square/Bean!" +
Bean.class.getName()) instanceof Bean);
+ assertTrue(context.lookup("global/square/Other") instanceof Bean);
+ assertTrue(context.lookup("global/square/Other!" +
Bean.class.getName()) instanceof Bean);
+ assertTrue(context.lookup("global/circle") instanceof Context);
+ assertTrue(context.lookup("global/circle/Bean") instanceof Bean);
+ assertTrue(context.lookup("global/circle/Bean!" +
Bean.class.getName()) instanceof Bean);
+ assertTrue(context.lookup("global/circle/Other") instanceof Bean);
+ assertTrue(context.lookup("global/circle/Other!" +
Bean.class.getName()) instanceof Bean);
- // TODO the Module JNDI context *should* be able to see the App
context
}
+ }
- {
- Context context = bean.getJndiContext();
-
- assertTrue(context.lookup("comp") instanceof Context);
- assertTrue(context.lookup("comp/EJBContext") instanceof
EJBContext);
- assertTrue(context.lookup("comp/TimerService") instanceof
TimerService);
- assertTrue(context.lookup("comp/TransactionManager") instanceof
TransactionManager);
-
assertTrue(context.lookup("comp/TransactionSynchronizationRegistry") instanceof
TransactionSynchronizationRegistry);
- assertTrue(context.lookup("comp/WebServiceContext") instanceof
WebServiceContext);
-
- assertTrue(context.lookup("comp/env") instanceof Context);
- assertTrue(context.lookup("comp/env") instanceof Context);
- assertTrue(context.lookup("comp/env/orange") instanceof
DataSource);
- assertTrue(context.lookup("comp/env/" + Bean.class.getName())
instanceof Context);
- assertTrue(context.lookup("comp/env/" + Bean.class.getName() +
"/red") instanceof DataSource);
-
- assertTrue(context.lookup("module") instanceof Context);
- assertTrue(context.lookup("module/ModuleName") instanceof String);
- assertTrue(context.lookup("module/blue") instanceof DataSource);
- assertTrue(context.lookup("module/Bean") instanceof Bean);
- assertTrue(context.lookup("module/Bean!" + Bean.class.getName())
instanceof Bean);
- assertTrue(context.lookup("module/Other") instanceof Bean);
- assertTrue(context.lookup("module/Other!" + Bean.class.getName())
instanceof Bean);
-
- assertTrue(context.lookup("app") instanceof Context);
- assertTrue(context.lookup("app/AppName") instanceof String);
- assertTrue(context.lookup("app/green") instanceof DataSource);
- assertTrue(context.lookup("app/testmodule") instanceof Context);
- assertTrue(context.lookup("app/testmodule/Bean") instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Bean!" +
Bean.class.getName()) instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Other") instanceof Bean);
- assertTrue(context.lookup("app/testmodule/Other!" +
Bean.class.getName()) instanceof Bean);
-
- assertTrue(context.lookup("global") instanceof Context);
- assertTrue(context.lookup("global/yellow") instanceof DataSource);
-
- assertTrue(context.lookup("global/testmodule") instanceof Context);
- assertTrue(context.lookup("global/testmodule/Bean") instanceof
Bean);
- assertTrue(context.lookup("global/testmodule/Bean!" +
Bean.class.getName()) instanceof Bean);
- assertTrue(context.lookup("global/testmodule/Other") instanceof
Bean);
- assertTrue(context.lookup("global/testmodule/Other!" +
Bean.class.getName()) instanceof Bean);
+ private AppContext createApp(String name, ConfigurationFactory config,
Assembler assembler) throws OpenEJBException, IOException,
javax.naming.NamingException {
+ // Setup the descriptor information
+ EjbJar ejbJar = new EjbJar(name);
+ ejbJar.addEnterpriseBean(new SingletonBean(Bean.class));
- assertEquals("testmodule", context.lookup("app/AppName"));
- assertEquals("testmodule", context.lookup("module/ModuleName"));
- }
+ // Deploy the bean a second time to simulate situations
+ // where the same java:module java:app java:global names
+ // are re-declared in a compatible way
+ ejbJar.addEnterpriseBean(new SingletonBean("Other", Bean.class));
+
+ EjbModule ejbModule = new EjbModule(ejbJar);
+ AppModule module = new AppModule(ejbModule);
+ return
assembler.createApplication(config.configureApplication(module));
}
public static class Bean {
@@ -174,4 +117,4 @@ public class JavaLookupScopesTest extend
return context.lookup(s);
}
}
-}
+}
\ No newline at end of file