[jboss-cvs] JBossAS SVN: r66258 - in trunk/ejb3: src/test/org/jboss/ejb3/test and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Oct 18 19:08:48 EDT 2007


Author: ALRubinger
Date: 2007-10-18 19:08:47 -0400 (Thu, 18 Oct 2007)
New Revision: 66258

Added:
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBean.java
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBusinessRemote.java
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessBean.java
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessLocal.java
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessRemote.java
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/
   trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/GetEjbObjectWithNo21ViewUnitTestCase.java
Modified:
   trunk/ejb3/build-test.xml
Log:
EJBTHREE-1057: Added Unit Tests

Modified: trunk/ejb3/build-test.xml
===================================================================
--- trunk/ejb3/build-test.xml	2007-10-18 20:22:33 UTC (rev 66257)
+++ trunk/ejb3/build-test.xml	2007-10-18 23:08:47 UTC (rev 66258)
@@ -2147,6 +2147,10 @@
       depends="compile-classes">	      
       <build-simple-jar name="ejbthree1040"/>
    </target>
+
+   <target name="ejbthree1057" depends="compile-classes">
+      <build-simple-jar name="ejbthree1057"/>
+   </target>
    
    <target name="ejbthree1060" depends="compile-classes">
       <build-simple-jar name="ejbthree1060"/>
@@ -3709,7 +3713,7 @@
       ejbthree939,
       ejbthree953, ejbthree957, ejbthree959, ejbthree963, ejbthree967, ejbthree971, ejbthree973, ejbthree985, ejbthree986,
       ejbthree989, ejbthree1020, ejbthree1023, ejbthree1025, ejbthree1040,
-      ejbthree1060,
+      ejbthree1057, ejbthree1060,
       ejbthree1062,
       ejbthree1066, ejbthree1071, ejbthree1075,
       jaxws,
@@ -4662,6 +4666,9 @@
          <param name="test" value="ejbthree1040"/>
       </antcall>
       <antcall target="test" inheritRefs="true">
+         <param name="test" value="ejbthree1057"/>
+      </antcall>
+      <antcall target="test" inheritRefs="true">
          <param name="test" value="ejbthree1060"/>
       </antcall>
       <antcall target="test" inheritRefs="true">

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBean.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBean.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBean.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057;
+
+import javax.ejb.EJB;
+import javax.ejb.EJBLocalObject;
+import javax.ejb.Remote;
+import javax.ejb.Stateless;
+
+import org.jboss.annotation.ejb.RemoteBinding;
+
+/**
+ * A DelegateBean.
+ * 
+ * @author <a href="mailto:andrew.rubinger at redhat.com">ALR</a>
+ * @version $Revision: $
+ */
+ at Stateless
+ at Remote(DelegateBusinessRemote.class)
+ at RemoteBinding(jndiBinding = DelegateBusinessRemote.JNDI_NAME_REMOTE)
+public class DelegateBean implements DelegateBusinessRemote
+{
+
+   // Instance Members
+   @EJB
+   TestBusinessLocal bean;
+
+   // Required Implementations
+
+   public EJBLocalObject testGetEjbLocalObject()
+   {
+      return bean.testGetEjbLocalObject();
+   }
+
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBean.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBusinessRemote.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBusinessRemote.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBusinessRemote.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,23 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057;
+
+import javax.ejb.EJBLocalObject;
+
+/**
+ * 
+ * A DelegateBusinessRemote.
+ * 
+ * @author <a href="mailto:andrew.rubinger at redhat.com>ALR</a>
+ * @version $Revision:  $
+ */
+public interface DelegateBusinessRemote
+{
+   public static String JNDI_NAME_REMOTE = "DelegateBean/remote";
+   
+   EJBLocalObject testGetEjbLocalObject();
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/DelegateBusinessRemote.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessBean.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessBean.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessBean.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057;
+
+import javax.annotation.Resource;
+import javax.ejb.EJBLocalObject;
+import javax.ejb.EJBObject;
+import javax.ejb.Local;
+import javax.ejb.Remote;
+import javax.ejb.SessionContext;
+import javax.ejb.Stateless;
+
+import org.jboss.annotation.ejb.LocalBinding;
+import org.jboss.annotation.ejb.RemoteBinding;
+
+ at Stateless
+ at Local(TestBusinessLocal.class)
+ at Remote(TestBusinessRemote.class)
+ at LocalBinding(jndiBinding=TestBusinessLocal.JNDI_NAME_LOCAL)
+ at RemoteBinding(jndiBinding=TestBusinessRemote.JNDI_NAME_REMOTE)
+public class TestBusinessBean implements TestBusinessLocal, TestBusinessRemote
+{
+   
+   // Instance Members
+   @Resource
+   private SessionContext ctx;
+
+   // Required Implementations
+   
+   public EJBLocalObject testGetEjbLocalObject()
+   {
+      return ctx.getEJBLocalObject();
+   }
+
+   public EJBObject testGetEjbObject()
+   {
+      return ctx.getEJBObject();
+   }
+
+   
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessBean.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessLocal.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessLocal.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessLocal.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,22 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057;
+
+import javax.ejb.EJBLocalObject;
+
+/**
+ * A TestBusinessLocal.
+ * 
+ * @author <a href="mailto:andrew.rubinger at redhat.com">ALR</a>
+ * @version $Revision:  $
+ */
+public interface TestBusinessLocal
+{
+   public static final String JNDI_NAME_LOCAL = "TestBean/local";
+   
+   EJBLocalObject testGetEjbLocalObject();
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessLocal.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessRemote.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessRemote.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessRemote.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,22 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057;
+
+import javax.ejb.EJBObject;
+
+/**
+ * A TestBusinessRemote.
+ * 
+ * @author <a href="mailto:andrew.rubinger at redhat.com">ALR</a>
+ * @version $Revision:  $
+ */
+public interface TestBusinessRemote
+{
+   public static final String JNDI_NAME_REMOTE = "TestBean/remote";
+
+   EJBObject testGetEjbObject();
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/TestBusinessRemote.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/GetEjbObjectWithNo21ViewUnitTestCase.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/GetEjbObjectWithNo21ViewUnitTestCase.java	                        (rev 0)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/GetEjbObjectWithNo21ViewUnitTestCase.java	2007-10-18 23:08:47 UTC (rev 66258)
@@ -0,0 +1,119 @@
+/*
+ * JBoss, the OpenSource J2EE webOS
+ * 
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.ejb3.test.ejbthree1057.unit;
+
+import javax.ejb.EJBException;
+import javax.ejb.EJBLocalObject;
+import javax.ejb.EJBObject;
+import javax.naming.NameNotFoundException;
+
+import junit.framework.Test;
+
+import org.jboss.ejb3.test.ejbthree1057.DelegateBusinessRemote;
+import org.jboss.ejb3.test.ejbthree1057.TestBusinessRemote;
+import org.jboss.test.JBossTestCase;
+
+/**
+ * A GetEjbObjectWithNo21ViewUnitTestCase.
+ * 
+ * @author <a href="mailto:andrew.rubinger at redhat.com">ALR</a>
+ * @version $Revision:  $
+ */
+public class GetEjbObjectWithNo21ViewUnitTestCase extends JBossTestCase
+{
+
+   // Constructor
+
+   public GetEjbObjectWithNo21ViewUnitTestCase(String name)
+   {
+      super(name);
+   }
+
+   // Test Suite
+
+   public static Test suite() throws Exception
+   {
+      return getDeploySetup(GetEjbObjectWithNo21ViewUnitTestCase.class, "ejbthree1057.jar");
+   }
+
+   // Tests
+
+   /**
+    * Ensures that a call to SessionContext.getEJBObject fails when 
+    * no EJB 2.1 view is defined
+    */
+   public void testGetEjbObjectWithNo21ViewFails() throws Exception
+   {
+      // Obtain test bean
+      TestBusinessRemote bean = null;
+      try
+      {
+         bean = (TestBusinessRemote) this.getInitialContext().lookup(TestBusinessRemote.JNDI_NAME_REMOTE);
+      }
+      catch (NameNotFoundException nnfe)
+      {
+         log.error("Could not obtain " + TestBusinessRemote.class.getName() + " from expected location "
+               + TestBusinessRemote.JNDI_NAME_REMOTE);
+      }
+
+      // Attempt to obtain EJBObject
+      EJBObject obj = null;
+      try
+      {
+         obj = bean.testGetEjbObject();
+      }
+      catch (EJBException ejbe)
+      {
+         if (ejbe.getCause() instanceof IllegalStateException)
+         {
+            log.info("Expected exception " + ejbe.getClass().getName() + " encountered.");
+            return;
+         }
+      }
+
+      // Should not be reached; fail the test
+      fail("Should have received exception while attempting to invoke SessionContext.getEJBObject().");
+   }
+
+   /**
+    * Ensures that a call to SessionContext.getEJBLocalObject fails when 
+    * no EJB 2.1 view is defined
+    */
+   public void testGetEjbLocalObjectWithNo21ViewFails() throws Exception
+   {
+      // Obtain test bean
+      DelegateBusinessRemote bean = null;
+      try
+      {
+         bean = (DelegateBusinessRemote) this.getInitialContext().lookup(DelegateBusinessRemote.JNDI_NAME_REMOTE);
+      }
+      catch (NameNotFoundException nnfe)
+      {
+         log.error("Could not obtain " + DelegateBusinessRemote.class.getName() + " from expected location "
+               + DelegateBusinessRemote.JNDI_NAME_REMOTE);
+      }
+
+      // Attempt to obtain EJBObject
+      EJBLocalObject obj = null;
+      try
+      {
+         obj = bean.testGetEjbLocalObject();
+      }
+      catch (Exception e)
+      {
+         if (e.getCause() instanceof IllegalStateException)
+         {
+            log.info("Expected exception " + e.getClass().getName() + " encountered.");
+            return;
+         }
+      }
+
+      // Should not be reached; fail the test
+      fail("Should have received exception while attempting to invoke SessionContext.getEJBLocalObject().");
+   }
+
+}


Property changes on: trunk/ejb3/src/test/org/jboss/ejb3/test/ejbthree1057/unit/GetEjbObjectWithNo21ViewUnitTestCase.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain




More information about the jboss-cvs-commits mailing list