You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by cs...@apache.org on 2006/05/22 22:58:57 UTC

svn commit: r408764 - in /beehive/trunk/system-controls: src/ejb/org/apache/beehive/controls/system/ejb/ test/ejb/ test/ejb/src/tests/org/apache/beehive/test/controls/system/test/ test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/ te...

Author: cschoett
Date: Mon May 22 13:58:56 2006
New Revision: 408764

URL: http://svn.apache.org/viewvc?rev=408764&view=rev
Log:
A bit more cleanup to the ejb/jms system control test suites.

Added:
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java   (contents, props changed)
      - copied, changed from r407920, beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/CactusControlTestCase.java
    beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/
    beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java   (with props)
Removed:
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/CactusControlTestCase.java
    beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestContextInitializer.java
Modified:
    beehive/trunk/system-controls/src/ejb/org/apache/beehive/controls/system/ejb/EJBControlImpl.java
    beehive/trunk/system-controls/test/ejb/build.xml
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestBMPEntityBeanControl.java
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestEjbLinkControl.java
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestMethodOverrideSessionEjbControl.java
    beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestSessionEjbControl.java
    beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestQueueJmsControl.java
    beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestTopicJmsControl.java

Modified: beehive/trunk/system-controls/src/ejb/org/apache/beehive/controls/system/ejb/EJBControlImpl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/src/ejb/org/apache/beehive/controls/system/ejb/EJBControlImpl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/src/ejb/org/apache/beehive/controls/system/ejb/EJBControlImpl.java (original)
+++ beehive/trunk/system-controls/src/ejb/org/apache/beehive/controls/system/ejb/EJBControlImpl.java Mon May 22 13:58:56 2006
@@ -82,10 +82,10 @@
             // based upon the local control service uri and control id
             //
             // todo: doesn't work this way in Geronimo!
-            _jndiName = JNDI_APPSCOPED_PREFIX + EJBInfo.getEJBRefName(context.getControlInterface());
+//            _jndiName = JNDI_APPSCOPED_PREFIX + EJBInfo.getEJBRefName(context.getControlInterface());
 
             // todo: works this way in geronimo, determine which is correct!
-//            _jndiName = EJBInfo.getEJBRefName(context.getControlInterface());
+            _jndiName = EJBInfo.getEJBRefName(context.getControlInterface());
         }
 
         // Obtain the JCX interface and identify the home/remote

Modified: beehive/trunk/system-controls/test/ejb/build.xml
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/build.xml?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/build.xml (original)
+++ beehive/trunk/system-controls/test/ejb/build.xml Mon May 22 13:58:56 2006
@@ -293,7 +293,7 @@
             <batchtest todir="${cactus.log.dir}">
                 <fileset dir="${cactus.src.dir}">
                     <include name="**/Test*.java"/>
-                    <!-- BMP test disabled to to deployment issues in g1.0, needs further investigation. -->
+                    <!-- BMP test disabled to to deployment issues in g1.0 when using jdk 1.5 GERONIMO-1454. -->
                     <exclude name="**/TestBMP*.java"/>
                 </fileset>
             </batchtest>

Modified: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestBMPEntityBeanControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestBMPEntityBeanControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestBMPEntityBeanControl.java (original)
+++ beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestBMPEntityBeanControl.java Mon May 22 13:58:56 2006
@@ -18,9 +18,9 @@
 
 package org.apache.beehive.test.controls.system.test;
 
-import org.apache.cactus.ServletTestCase;
 import org.apache.beehive.test.controls.system.ejb.entity.SimpleEntityHome;
 import org.apache.beehive.test.controls.system.controls.BMPEntityBeanControl;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 import org.apache.beehive.controls.api.bean.Control;
 
 /**

Modified: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestEjbLinkControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestEjbLinkControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestEjbLinkControl.java (original)
+++ beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestEjbLinkControl.java Mon May 22 13:58:56 2006
@@ -18,9 +18,9 @@
 
 package org.apache.beehive.test.controls.system.test;
 
-import org.apache.cactus.ServletTestCase;
 import org.apache.beehive.test.controls.system.controls.EjbLinkControl;
 import org.apache.beehive.test.controls.system.ejb.session.SimpleSessionHome;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 import org.apache.beehive.controls.api.bean.Control;
 
 /**

Modified: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestMethodOverrideSessionEjbControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestMethodOverrideSessionEjbControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestMethodOverrideSessionEjbControl.java (original)
+++ beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestMethodOverrideSessionEjbControl.java Mon May 22 13:58:56 2006
@@ -21,6 +21,7 @@
 import org.apache.beehive.controls.api.bean.Control;
 import org.apache.beehive.test.controls.system.controls.MethodOverrideSessionEJBControl;
 import org.apache.beehive.test.controls.system.ejb.session.SimpleSessionHome;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 
 /**
  * Test the ability to override a EJB method in the EJB control interface.  Sometimes

Modified: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestSessionEjbControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestSessionEjbControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestSessionEjbControl.java (original)
+++ beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/TestSessionEjbControl.java Mon May 22 13:58:56 2006
@@ -20,6 +20,7 @@
 
 import org.apache.beehive.test.controls.system.ejb.session.SimpleSessionHome;
 import org.apache.beehive.test.controls.system.controls.SimpleSessionEJBControl;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 import org.apache.beehive.controls.api.bean.Control;
 
 /**

Copied: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java (from r407920, beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/CactusControlTestCase.java)
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java?p2=beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java&p1=beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/CactusControlTestCase.java&r1=407920&r2=408764&rev=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/CactusControlTestCase.java (original)
+++ beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java Mon May 22 13:58:56 2006
@@ -16,7 +16,7 @@
  * $Header:$
  */
 
-package org.apache.beehive.test.controls.system.test;
+package org.apache.beehive.test.controls.system.test.util;
 
 import org.apache.cactus.ServletTestCase;
 import org.apache.beehive.controls.test.util.ControlContainerContextManager;

Propchange: beehive/trunk/system-controls/test/ejb/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestQueueJmsControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestQueueJmsControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestQueueJmsControl.java (original)
+++ beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestQueueJmsControl.java Mon May 22 13:58:56 2006
@@ -19,11 +19,9 @@
 package org.apache.beehive.test.controls.system.test;
 
 import org.apache.beehive.test.controls.system.controls.OrderQueueControl;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 import org.apache.beehive.controls.api.bean.Control;
-import org.apache.beehive.controls.api.context.ControlThreadContext;
-import org.apache.beehive.controls.api.context.ControlContainerContext;
 import org.apache.beehive.controls.system.jms.JMSControl;
-import org.apache.cactus.ServletTestCase;
 
 import javax.jms.Message;
 import javax.jms.ObjectMessage;
@@ -39,33 +37,17 @@
 import java.io.Serializable;
 
 /**
+ * JMS Control Queue tests.
  */
-public class TestQueueJmsControl extends ServletTestCase
+public class TestQueueJmsControl extends CactusControlTestCase
 {
 
     @Control
     private OrderQueueControl _jmsControl;
 
-    private ControlContainerContext _controlContext = null;
-
     /**
+     *  empty the message queue
      */
-    public void setUp() throws Exception {
-
-        _controlContext = ControlThreadContext.getContext();
-        if (_controlContext == null) {
-            _controlContext = TestContextInitializer.initContext(this);
-        } else {
-            TestQueueJmsControlClientInitializer.initialize(_controlContext, this);
-        }
-    }
-
-    public void tearDown() throws Exception {
-        _controlContext.endContext();
-        super.tearDown();
-    }
-
-    /* empty the message queue */
     public void testAAA() throws Exception {
 
         while (true) {
@@ -167,11 +149,6 @@
         assertEquals(Byte.MIN_VALUE, qmess.readByte());
         assertEquals(Byte.MAX_VALUE, qmess.readByte());
     }
-
-
-
-
-
 
     private static Message getMessage(JMSControl jmsControl) throws JMSException {
 

Modified: beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestTopicJmsControl.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestTopicJmsControl.java?rev=408764&r1=408763&r2=408764&view=diff
==============================================================================
--- beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestTopicJmsControl.java (original)
+++ beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/TestTopicJmsControl.java Mon May 22 13:58:56 2006
@@ -19,10 +19,8 @@
 package org.apache.beehive.test.controls.system.test;
 
 import org.apache.beehive.test.controls.system.controls.OrderTopicControl;
+import org.apache.beehive.test.controls.system.test.util.CactusControlTestCase;
 import org.apache.beehive.controls.api.bean.Control;
-import org.apache.beehive.controls.api.context.ControlThreadContext;
-import org.apache.beehive.controls.api.context.ControlContainerContext;
-import org.apache.cactus.ServletTestCase;
 
 import javax.jms.Message;
 import javax.jms.TextMessage;
@@ -38,31 +36,12 @@
 import java.io.Serializable;
 
 /**
+ * Test JMS control for Topic support.
  */
-public class TestTopicJmsControl extends ServletTestCase
+public class TestTopicJmsControl extends CactusControlTestCase
 {
-
     @Control
     private OrderTopicControl _jmsControl;
-
-    private ControlContainerContext _controlContext = null;
-
-    /**
-     */
-    public void setUp() throws Exception {
-
-        _controlContext = ControlThreadContext.getContext();
-        if (_controlContext == null) {
-            _controlContext = TestContextInitializer.initContext(this);
-        } else {
-            TestTopicJmsControlClientInitializer.initialize(_controlContext, this);
-        }
-    }
-
-    public void tearDown() throws Exception {
-        _controlContext.endContext();
-        super.tearDown();
-    }
 
     public void testSendOrderMessage() throws Exception {
         // create a subscription to the topic

Added: beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java
URL: http://svn.apache.org/viewvc/beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java?rev=408764&view=auto
==============================================================================
--- beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java (added)
+++ beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java Mon May 22 13:58:56 2006
@@ -0,0 +1,102 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+
+package org.apache.beehive.test.controls.system.test.util;
+
+import org.apache.cactus.ServletTestCase;
+import org.apache.beehive.controls.test.util.ControlContainerContextManager;
+import org.apache.beehive.controls.test.util.ControlContainerContextManagerFactory;
+import org.apache.beehive.controls.test.container.ControlTestContainerContext;
+import org.apache.beehive.controls.test.ControlTestException;
+import org.apache.beehive.controls.api.context.ControlContainerContext;
+import org.apache.beehive.controls.api.context.ControlThreadContext;
+import org.apache.beehive.controls.api.bean.ControlBean;
+
+/**
+ * Base control test case.
+ */
+public abstract class CactusControlTestCase
+    extends ServletTestCase {
+
+    /* todo: push strings into a .properties file */
+
+    private ControlContainerContextManager _controlContainerContextManager = null;
+
+    public void setUp()
+        throws Exception {
+
+        super.setUp();
+
+        beginContext();
+        initializeControls();
+    }
+
+    public void tearDown()
+        throws Exception {
+
+        super.tearDown();
+
+        endContext();
+    }
+
+    protected ControlContainerContext initializeControlContainerContext() {
+        return new ControlTestContainerContext();
+    }
+
+    protected ControlContainerContext getControlContainerContext() {
+        return getControlContainerContextManager().getControlContainerContext();
+    }
+
+    protected void initializeControls() {
+        getControlContainerContextManager().instantiateControls(this);
+    }
+
+    protected void beginContext() {
+        getControlContainerContextManager().beginContext();
+    }
+
+    protected void endContext() {
+        getControlContainerContextManager().endContext();
+    }
+
+    protected ControlContainerContextManager getControlContainerContextManager() {
+        if(_controlContainerContextManager == null) {
+            ControlContainerContext ccc = initializeControlContainerContext();
+
+            if(ccc == null)
+                throw new ControlTestException("Could not instantiate a ControlContainerContextManager as the control container context was null");
+
+            _controlContainerContextManager = ControlContainerContextManagerFactory.getInstance(ccc);
+        }
+
+        return _controlContainerContextManager;
+    }
+
+    protected ControlBean instantiateControl(String className) {
+        ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
+        try {
+            Object controlBean = java.beans.Beans.instantiate(classLoader, className, ControlThreadContext.getContext());
+            assert controlBean instanceof ControlBean;
+            return (ControlBean)controlBean;
+        }
+        catch(Exception e) {
+            throw new ControlTestException("Could not instantiate control with class \"" + className +
+                "\".  Cause: " + e.getMessage(), e);
+        }
+    }
+}

Propchange: beehive/trunk/system-controls/test/jms/src/tests/org/apache/beehive/test/controls/system/test/util/CactusControlTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native