dain        2004/04/10 02:51:38

  Modified:    modules/core/src/test/org/openejb/deployment
                        TransactionPolicyHelperTest.java
  Log:

  Rewrote most unit tests to work against the new container
  Removed unit tests for already deleted code or functionality
  Changed EJBHome and EJBLocalHome remove by primary key on Session beans
  to throw RemoveException instead of RemoteException (see EJB 2.1
  Specification Section 6.6)
  
  Revision  Changes    Path
  1.3       +76 -67    
openejb/modules/core/src/test/org/openejb/deployment/TransactionPolicyHelperTest.java
  
  Index: TransactionPolicyHelperTest.java
  ===================================================================
  RCS file: 
/home/projects/openejb/scm/openejb/modules/core/src/test/org/openejb/deployment/TransactionPolicyHelperTest.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- TransactionPolicyHelperTest.java  21 Mar 2004 20:29:24 -0000      1.2
  +++ TransactionPolicyHelperTest.java  10 Apr 2004 06:51:38 -0000      1.3
  @@ -48,7 +48,17 @@
   
   package org.openejb.deployment;
   
  +import java.util.ArrayList;
  +import java.util.List;
  +
  +import org.apache.geronimo.xbeans.j2ee.ContainerTransactionType;
  +import org.apache.geronimo.xbeans.j2ee.MethodParamsType;
  +import org.apache.geronimo.xbeans.j2ee.MethodType;
  +
   import junit.framework.TestCase;
  +import org.openejb.dispatch.InterfaceMethodSignature;
  +import org.openejb.transaction.ContainerPolicy;
  +import org.openejb.transaction.TransactionPolicy;
   
   /**
    *
  @@ -58,80 +68,79 @@
    * */
   public class TransactionPolicyHelperTest extends TestCase {
   
  -//    private ContainerTransactionType[] containerTransaction;
  -//    private TransactionPolicyHelper transactionPolicyHelper;
  -//    private TransactionPolicySource transactionPolicySource;
  +    private ContainerTransactionType[] containerTransaction;
  +    private TransactionPolicyHelper transactionPolicyHelper;
  +    private TransactionPolicySource transactionPolicySource;
   
       protected void setUp() throws Exception {
  -//        List containerTransactionList = new ArrayList();
  -//        ContainerTransactionType containerTxn = 
ContainerTransactionType.Factory.newInstance();
  -//        containerTxn.addNewTransAttribute().setStringValue("Mandatory");
  -//        MethodType method1 = containerTxn.addNewMethod();
  -//        method1.addNewEjbName().setStringValue("Ejb1");
  -//        method1.addNewMethodName().setStringValue("*");
  -//        containerTransactionList.add(containerTxn);
  -//        containerTxn = ContainerTransactionType.Factory.newInstance();
  -//        containerTxn.addNewTransAttribute().setStringValue("Supports");
  -//        method1 = containerTxn.addNewMethod();
  -//        method1.addNewEjbName().setStringValue("Ejb1");
  -//        method1.addNewMethodIntf().setStringValue("Remote");
  -//        method1.addNewMethodName().setStringValue("*");
  -//        containerTransactionList.add(containerTxn);
  -//        containerTxn = ContainerTransactionType.Factory.newInstance();
  -//        containerTxn.addNewTransAttribute().setStringValue("RequiresNew");
  -//        method1 = containerTxn.addNewMethod();
  -//        method1.addNewEjbName().setStringValue("Ejb1");
  -//        //method1.setMethodIntf("Remote");
  -//        method1.addNewMethodName().setStringValue("foo");
  -//        containerTransactionList.add(containerTxn);
  -//        containerTxn = ContainerTransactionType.Factory.newInstance();
  -//        containerTxn.addNewTransAttribute().setStringValue("Never");
  -//        method1 = containerTxn.addNewMethod();
  -//        method1.addNewEjbName().setStringValue("Ejb1");
  -//        method1.addNewMethodIntf().setStringValue("Local");
  -//        method1.addNewMethodName().setStringValue("bar");
  -//        method1.addNewMethodParams().addNewMethodParam().setStringValue("foo");
  -//        containerTransactionList.add(containerTxn);
  -//        containerTxn = ContainerTransactionType.Factory.newInstance();
  -//        containerTxn.addNewTransAttribute().setStringValue("NotSupported");
  -//        method1 = containerTxn.addNewMethod();
  -//        method1.addNewEjbName().setStringValue("Ejb1");
  -//        method1.addNewMethodIntf().setStringValue("Local");
  -//        method1.addNewMethodName().setStringValue("foo");
  -//        MethodParamsType methodParams = method1.addNewMethodParams();
  -//        methodParams.addNewMethodParam().setStringValue("foo");
  -//        methodParams.addNewMethodParam().setStringValue("foo");
  -//        containerTransactionList.add(containerTxn);
  -//        containerTransaction = 
(ContainerTransactionType[])containerTransactionList.toArray(new 
ContainerTransactionType[containerTransactionList.size()]);
  -//        transactionPolicyHelper = new 
TransactionPolicyHelper(containerTransaction);
  -//        transactionPolicySource = 
transactionPolicyHelper.getTransactionPolicySource("Ejb1");
  +        List containerTransactionList = new ArrayList();
  +        ContainerTransactionType containerTxn = 
ContainerTransactionType.Factory.newInstance();
  +        containerTxn.addNewTransAttribute().setStringValue("Mandatory");
  +        MethodType method1 = containerTxn.addNewMethod();
  +        method1.addNewEjbName().setStringValue("Ejb1");
  +        method1.addNewMethodName().setStringValue("*");
  +        containerTransactionList.add(containerTxn);
  +        containerTxn = ContainerTransactionType.Factory.newInstance();
  +        containerTxn.addNewTransAttribute().setStringValue("Supports");
  +        method1 = containerTxn.addNewMethod();
  +        method1.addNewEjbName().setStringValue("Ejb1");
  +        method1.addNewMethodIntf().setStringValue("Remote");
  +        method1.addNewMethodName().setStringValue("*");
  +        containerTransactionList.add(containerTxn);
  +        containerTxn = ContainerTransactionType.Factory.newInstance();
  +        containerTxn.addNewTransAttribute().setStringValue("RequiresNew");
  +        method1 = containerTxn.addNewMethod();
  +        method1.addNewEjbName().setStringValue("Ejb1");
  +        //method1.setMethodIntf("Remote");
  +        method1.addNewMethodName().setStringValue("foo");
  +        containerTransactionList.add(containerTxn);
  +        containerTxn = ContainerTransactionType.Factory.newInstance();
  +        containerTxn.addNewTransAttribute().setStringValue("Never");
  +        method1 = containerTxn.addNewMethod();
  +        method1.addNewEjbName().setStringValue("Ejb1");
  +        method1.addNewMethodIntf().setStringValue("Local");
  +        method1.addNewMethodName().setStringValue("bar");
  +        method1.addNewMethodParams().addNewMethodParam().setStringValue("foo");
  +        containerTransactionList.add(containerTxn);
  +        containerTxn = ContainerTransactionType.Factory.newInstance();
  +        containerTxn.addNewTransAttribute().setStringValue("NotSupported");
  +        method1 = containerTxn.addNewMethod();
  +        method1.addNewEjbName().setStringValue("Ejb1");
  +        method1.addNewMethodIntf().setStringValue("Local");
  +        method1.addNewMethodName().setStringValue("foo");
  +        MethodParamsType methodParams = method1.addNewMethodParams();
  +        methodParams.addNewMethodParam().setStringValue("foo");
  +        methodParams.addNewMethodParam().setStringValue("foo");
  +        containerTransactionList.add(containerTxn);
  +        containerTransaction = (ContainerTransactionType[]) 
containerTransactionList.toArray(new 
ContainerTransactionType[containerTransactionList.size()]);
  +        transactionPolicyHelper = new TransactionPolicyHelper(containerTransaction);
  +        transactionPolicySource = 
transactionPolicyHelper.getTransactionPolicySource("Ejb1");
       }
   
       public void testDefault() throws Exception {
  -//        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Home", new MethodSignature("foo2", new 
String[] {}));
  -//        assertEquals("Expected Mandatory default", ContainerPolicy.Mandatory, 
policy);
  +        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Home", new 
InterfaceMethodSignature("foo2", new String[]{}, true));
  +        assertEquals("Expected Mandatory default", ContainerPolicy.Mandatory, 
policy);
  +    }
  +
  +    public void testInterfaceOverride() throws Exception {
  +        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Remote", new 
InterfaceMethodSignature("foo2", new String[]{}, false));
  +        assertEquals("Expected Supports", ContainerPolicy.Supports, policy);
       }
   
  -//    public void testInterfaceOverride() throws Exception {
  -//        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Remote", new MethodSignature("foo2", new 
String[] {}));
  -//        assertEquals("Expected Supports", ContainerPolicy.Supports, policy);
  -//    }
  -
  -//    public void testMethodNoInterfaceOverride() throws Exception {
  -//        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("LocalHome", new MethodSignature("foo", 
new String[] {"bar"}));
  -//        assertEquals("Expected Supports", ContainerPolicy.RequiresNew, policy);
  -//    }
  -
  -//    public void testMethodInterfaceOverride() throws Exception {
  -//        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Local", new MethodSignature("bar", new 
String[] {"foo"}));
  -//        assertEquals("Expected Supports", ContainerPolicy.Never, policy);
  -//    }
  -
  -//    public void testMethodInterfaceTwoParamOverride() throws Exception {
  -//        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Local", new MethodSignature("foo", new 
String[] {"foo", "foo"}));
  -//        assertEquals("Expected Supports", ContainerPolicy.NotSupported, policy);
  -//    }
  +    public void testMethodNoInterfaceOverride() throws Exception {
  +        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("LocalHome", new 
InterfaceMethodSignature("foo", new String[]{"bar"}, true));
  +        assertEquals("Expected Supports", ContainerPolicy.RequiresNew, policy);
  +    }
  +
  +    public void testMethodInterfaceOverride() throws Exception {
  +        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Local", new 
InterfaceMethodSignature("bar", new String[]{"foo"}, false));
  +        assertEquals("Expected Supports", ContainerPolicy.Never, policy);
  +    }
   
  +    public void testMethodInterfaceTwoParamOverride() throws Exception {
  +        TransactionPolicy policy = 
transactionPolicySource.getTransactionPolicy("Local", new 
InterfaceMethodSignature("foo", new String[]{"foo", "foo"}, false));
  +        assertEquals("Expected Supports", ContainerPolicy.NotSupported, policy);
  +    }
   }
   
   
  
  
  

Reply via email to