Hello,
I'm going to add tests to my legacy application. I create simple test like:

public class TestServices
{
        private static EJBContainer container;

        @BeforeClass
        public static void start()
        {
                Properties p = new Properties();
                p.put("log4j.category.OpenEJB", "debug");
                p.put("openejb.validation.output.level", "verbose");
                
                //p.put("openejb.deployments.classpath.include",
"file:/d:/dev/workspace/my_apps_test/WebContent/WEB-INF/classes/");
                //p.put("openejb.deployments.classpath.include",
"file:/d:///dev/workspace/my_apps_test/WebContent/WEB-INF/classes/");
                //p.put("openejb.deployments.classpath.filter.descriptors", 
"true");
                //p.put("openejb.deployments.classpath.exclude", "");
                
                //connection to db
                p.put("myTestDb", "new://Resource?type=DataSource");
                p.put("myTestDb.JdbcDriver", "oracle.jdbc.OracleDriver");
                p.put("myTestDb.JdbcUrl", 
"dbc:oracle:thin:@unix_server:1521:mytestdb");                
                p.put("myTestDb.UserName", "user");
                p.put("myTestDb.Password", "passwd");
                p.put("myTestDb.JtaManaged", "true");
                
                container = EJBContainer.createEJBContainer(p);
        }

        @AfterClass
        public static void stop()
        {
                container.close();
        }

        @Test
        public void sayHelloTest() throws NamingException
        {
                Context context = container.getContext();
                Services services = (Services)
context.lookup("java:global/WEB-INF/Services");
                
                org.junit.Assert.assertEquals("Hello, I'm ejb", 
services.sayHello());
        }
        
        @Test
        public void znadzOsobeTest() throws NamingException
        {
                Context context = container.getContext();
                Services services = (Services)
context.lookup("java:global/WEB-INF/Services");
                
                org.junit.Assert.assertEquals("Michael",
services.getLoginName("michaelLogin"));
        }
}

I start this test from eclipse, where tomee server (similar to production)
is set as Server Runtime and add to libraries. Now, when I start junit test
in eclipse, this tomee is using as server. Unfortunatelly this server has
some specific modification in libs according to internal sso framework. So I
would like to not use it in test, to avoid it I tried:
1. use openejb.deployments.classpath.include and exclude (like i commend
code) to use only my modules - but it doesn't work - modules to tests are
not founded.
2. change Server Runtime to antoher "clear" tomee instance in eclipse
project setting and then start test - this solution works. But I would like
to set path to server in my code, not to change it manually in eclipse.

I was looking how to solve this problem few hours, but found nothing.

Best Regards
sw




-----
Best Regards
sw
--
View this message in context: 
http://tomee-openejb.979440.n4.nabble.com/EJBContainer-and-tests-tp4672761.html
Sent from the TomEE Users mailing list archive at Nabble.com.

Reply via email to