User: d_jencks
  Date: 01/12/19 22:13:27

  Modified:    src/main/org/jboss/test/jmx/test
                        ConnectionFactoryLoaderUnitTestCase.java
                        DeployServiceUnitTestCase.java
  Log:
  Fixed up dependency tests to work with depends elements
  
  Revision  Changes    Path
  1.7       +17 -5     
jbosstest/src/main/org/jboss/test/jmx/test/ConnectionFactoryLoaderUnitTestCase.java
  
  Index: ConnectionFactoryLoaderUnitTestCase.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jbosstest/src/main/org/jboss/test/jmx/test/ConnectionFactoryLoaderUnitTestCase.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ConnectionFactoryLoaderUnitTestCase.java  2001/11/19 06:59:13     1.6
  +++ ConnectionFactoryLoaderUnitTestCase.java  2001/12/20 06:13:27     1.7
  @@ -33,7 +33,7 @@
   /**
    * @see       <related>
    * @author    <a href="mailto:[EMAIL PROTECTED]";>David Jencks</a>
  - * @version   $Revision: 1.6 $
  + * @version   $Revision: 1.7 $
    */
   public class ConnectionFactoryLoaderUnitTestCase
          extends JBossTestCase
  @@ -108,9 +108,13 @@
         ObjectName serviceControllerName = new 
ObjectName("JBOSS-SYSTEM:spine=ServiceController");
         //invoke(connectionFactoryLoaderName, "start", args, sig);
         invoke(serviceControllerName, 
  -             "registerAndStartService", 
  -             new Object[] {connectionFactoryLoaderName, null}, 
  -             new String[] {"javax.management.ObjectName", "java.lang.String"});
  +             "create", 
  +             new Object[] {connectionFactoryLoaderName}, 
  +             new String[] {"javax.management.ObjectName"});
  +      invoke(serviceControllerName, 
  +             "start", 
  +             new Object[] {connectionFactoryLoaderName}, 
  +             new String[] {"javax.management.ObjectName"});
   
         assertTrue("State is not started", 
"Started".equals(getServer().getAttribute(connectionFactoryLoaderName, 
"StateString")));
   
  @@ -127,8 +131,16 @@
         undeployJ2ee("jmxtest.jar");
   
         //undeploy test connection factory loader.
  +      invoke(serviceControllerName, 
  +             "stop",
  +             new Object[] {connectionFactoryLoaderName}, 
  +             new String[] {"javax.management.ObjectName"});
  +      invoke(serviceControllerName, 
  +             "destroy",
  +             new Object[] {connectionFactoryLoaderName}, 
  +             new String[] {"javax.management.ObjectName"});
         invoke(serviceControllerName, 
  -             "undeploy",
  +             "remove",
                new Object[] {connectionFactoryLoaderName}, 
                new String[] {"javax.management.ObjectName"});
   
  
  
  
  1.9       +45 -239   
jbosstest/src/main/org/jboss/test/jmx/test/DeployServiceUnitTestCase.java
  
  Index: DeployServiceUnitTestCase.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jbosstest/src/main/org/jboss/test/jmx/test/DeployServiceUnitTestCase.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DeployServiceUnitTestCase.java    2001/12/05 21:22:21     1.8
  +++ DeployServiceUnitTestCase.java    2001/12/20 06:13:27     1.9
  @@ -32,13 +32,20 @@
   /**
    * @see       <related>
    * @author    <a href="mailto:[EMAIL PROTECTED]";>David Jencks</a>
  - * @version   $Revision: 1.8 $
  + * @version   $Revision: 1.9 $
    */
   public class DeployServiceUnitTestCase
          extends JBossTestCase
   {
      // Constants -----------------------------------------------------
  -
  +   protected final static int INSTALLED = 0;
  +   protected final static int CONFIGURED = 1;
  +   protected final static int CREATED = 2;
  +   protected final static int RUNNING = 3;
  +   protected final static int FAILED = 4;
  +   protected final static int STOPPED = 5;
  +   protected final static int DESTROYED = 6;
  +   protected final static int NOTYETINSTALLED = 7;
      // Attributes ----------------------------------------------------
   
      ObjectName serviceControllerName;
  @@ -211,7 +218,7 @@
       *
       * @exception Exception  Description of Exception
       */
  -   public void testDeploySARDependencies() throws Exception
  +   public void testDependsElement() throws Exception
      {
         //C depends on A and B
         //Find the testdeploy[ABC].sar files in lib directory with other jars.
  @@ -252,10 +259,10 @@
            //undeploy test xml doc.
            undeployService(testUrlA);
   
  -         //check they aren't there any more
  +         //check they aren't there any more or they have stopped.
            assertTrue("test mbean A still registered after undeploy of A", 
!getServer().isRegistered(testObjectNameA));
  -         assertTrue("test mbean C still registered after undeploy of A", 
!getServer().isRegistered(testObjectNameC));
  -         assertTrue("test mbean B unregistered after undeploy of A", 
getServer().isRegistered(testObjectNameB));
  +         assertTrue("test mbean C not stopped after undeploy of A", 
!checkState(testObjectNameC, RUNNING));
  +         assertTrue("test mbean B stopped after undeploy of A", 
checkState(testObjectNameB, RUNNING));
   
            //Now undeploy B, should prevent redeploy of C when A is redeployed.
            
  @@ -271,7 +278,7 @@
            
            assertTrue("test mbean B is registered after deploy of A", 
!getServer().isRegistered(testObjectNameB));
            
  -         assertTrue("test mbean C is registered after deploy of A, with B 
unregistered", !getServer().isRegistered(testObjectNameC));
  +         assertTrue("test mbean C started after deploy of A, with B unregistered", 
!checkState(testObjectNameC, RUNNING));
             
            //now redeploy B, should also redeploy C
            deployService(testUrlB);
  @@ -311,10 +318,10 @@
       *
       * @exception Exception  Description of Exception
       */
  -   public void testDepends() throws Exception
  +   public void testDependsListElement() throws Exception
      {
  -      //C depends on A and B via classpath.
  -      //D depends on  A and C via depends elements.
  +      //C depends on A and B via anonymous depends element.
  +      //D depends on  A and C via anonymous dependsList.
         //Find the testdeploy[ABC].sar files in lib directory with other jars.
   
         String testUrlA = "testdeploya.sar";
  @@ -330,8 +337,6 @@
         ObjectName testObjectNameD = new ObjectName("test:name=TestDeployerD");
         ObjectName testObjectName2 = new ObjectName("test:name=TestDeployer2");
         ObjectName testObjectName3 = new ObjectName("test:name=TestDeployer3");
  -      //the classloader mbean
  -      ObjectName classLoaderObjectName = new 
ObjectName("JBOSS-SYSTEM:spine=ServiceClassLoader");
         try
         {
            //check they aren't there already
  @@ -342,78 +347,48 @@
   
            //deploy the test jsrs.
            deployService(testUrlD);
  -         //Nothing should be registered: D is waiting for A and C
  -         Collection ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
  -         //check deployment registered expected mbeans
  -         assertTrue("test mbean D registered after deploy", 
!ds.contains(testObjectNameD));
  -         assertTrue("test mbean C registered after deploy", 
!ds.contains(testObjectNameC));
  -         assertTrue("test mbean A registered after deploy", 
!ds.contains(testObjectNameA));
  -         assertTrue("test mbean B registered after deploy", 
!ds.contains(testObjectNameB));
  +
  +         assertTrue("test mbean D started with A, B, and C unregistered", 
!checkState(testObjectNameD, RUNNING));
   
   
            //deploy A.
            deployService(testUrlA);
  -         //should have only bean A, D is still waiting on C
  -         ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
  -
  -         //check deployment registered expected mbeans
  -         assertTrue("test mbeanA not registered after deploy", 
ds.contains(testObjectNameA));
  -         assertTrue("test mbeanB registered after deploy", 
!ds.contains(testObjectNameB));
  -         assertTrue("test mbeanC registered after deploy", 
!ds.contains(testObjectNameC));
  -         assertTrue("test mbeanD registered after deploy", 
!ds.contains(testObjectNameD));
  -
  -         //Deploy B, should have no effect except on B
  -         deployService(testUrlB);
  -         ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
  -
  -         assertTrue("test mbeanA not registered after deploy", 
ds.contains(testObjectNameA));
  -         assertTrue("test mbeanB not registered after deploy", 
ds.contains(testObjectNameB));
  -         assertTrue("test mbeanC registered after deploy", 
!ds.contains(testObjectNameC));
  -         assertTrue("test mbeanD registered after deploy", 
!ds.contains(testObjectNameD));
  -
  -
  -         //check the class for D is not available
  -         //actually it should be here...
  -         try
  -         {
  -            ObjectInstance oe = 
getServer().createMBean("org.jboss.test.jmx.mbean.TestDeployerD", testObjectName3, 
classLoaderObjectName);
  -            //fail("created mbean when class should not be present: object 
instance: " + oe);
  -         }
  -         catch (ReflectionException re)
  -         {
  -            Exception e = re.getTargetException();
  -            if (!(e instanceof ClassNotFoundException))
  -            {
  -               fail("Wrong exception thrown when trying to create mbean" + e);
  -            }
  -         }
  +         //A should be started, not anything else
  +         assertTrue("test mbean A not started", checkState(testObjectNameA, 
RUNNING));
  +         assertTrue("test mbean D started with A, B, and C unregistered", 
!checkState(testObjectNameD, RUNNING));
   
  -         //deploy the test bean C.  D should get created too.
  +         //Deploy C, should not start
            deployService(testUrlC);
  +         assertTrue("test mbean C started with B unregistered", 
!checkState(testObjectNameC, RUNNING));
   
  -         //check deployment registered expected mbeans
  -         ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
  -         assertTrue("test mbean A not registered after deploy of C", 
ds.contains(testObjectNameA));
   
  -         assertTrue("test mbean B not registered after deploy of C", 
ds.contains(testObjectNameB));
   
  -         assertTrue("test mbean C not registered after deploy of C", 
ds.contains(testObjectNameC));
  -         assertTrue("test mbean D not registered after deploy of C", 
ds.contains(testObjectNameD));
  +         //deploy the test bean B.  C and D should start too.
  +         deployService(testUrlB);
  +         assertTrue("test mbean A not started", checkState(testObjectNameA, 
RUNNING));
  +         assertTrue("test mbean B not started", checkState(testObjectNameB, 
RUNNING));
  +         assertTrue("test mbean C not started", checkState(testObjectNameC, 
RUNNING));
  +         assertTrue("test mbean D not started", checkState(testObjectNameD, 
RUNNING));
   
  +
            //undeploy test xml doc.
  -         undeployService(testUrlD);
  -         undeployService(testUrlC);
            undeployService(testUrlA);
  +         assertTrue("test mbean A present after undeploy", 
!getServer().isRegistered(testObjectNameA));
  +         assertTrue("test mbean B not started after undeploy of A", 
checkState(testObjectNameB, RUNNING));
  +         assertTrue("test mbean C started after undeploy of A", 
!checkState(testObjectNameC, RUNNING));
  +         assertTrue("test mbean D started after undeploy of A", 
!checkState(testObjectNameD, RUNNING));
  +         undeployService(testUrlC);
            undeployService(testUrlB);
  +         undeployService(testUrlD);
   
            //check they aren't there any more
  -         ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
  +         Collection ds = 
Arrays.asList((ObjectName[])getServer().getAttribute(serviceControllerName, 
"Deployed"));
            assertTrue("test mbean A still registered after undeploy", 
!ds.contains(testObjectNameA));
   
            assertTrue("test mbean A still registered after undeploy", 
!ds.contains(testObjectNameB));
   
            assertTrue("test mbean A still registered after undeploy", 
!ds.contains(testObjectNameC));
  -         assertTrue("test mbean A still registered after undeploy", 
!ds.contains(testObjectNameD));
  +         assertTrue("test mbean D still registered after undeploy", 
!ds.contains(testObjectNameD));
         }
         finally
         {
  @@ -451,183 +426,8 @@
      }
   
   
  -   /**
  -    * C and E both have A and B in their classpath.  
  -    * we deploy C, E, and B.
  -    * Undeploying C should leave A and B (classes only for A)
  -    * Undeploying E should remove classes for A and leave B 
  -    * (B was explicitly deployed)
  -    *
  -    * @exception Exception  Description of Exception
  -    */
  -   public void testNeedsClasses() throws Exception
  -   {
  -      //C depends on A and B via classpath.
  -      //Find the testdeploy[ABC].sar files in lib directory with other jars.
  -
  -      String testUrlA = "testdeploya.sar";
  -      String testUrlB = "testdeployb.sar";
  -      String testUrlC = "testdeployc.sar";
  -      String testUrlE = "testdeploye.sar";
  -      getLog().debug("testUrlA is : " + testUrlA);
  -
  -      //the mbeans we are trying to deploy/undeploy
  -      ObjectName testObjectNameA = new ObjectName("test:name=TestDeployerA");
  -      ObjectName testObjectNameB = new ObjectName("test:name=TestDeployerB");
  -      ObjectName testObjectNameC = new ObjectName("test:name=TestDeployerC");
  -      ObjectName testObjectNameE = new ObjectName("test:name=TestDeployerE");
  -      ObjectName testObjectName2 = new ObjectName("test:name=TestDeployer2");
  -      ObjectName testObjectName3 = new ObjectName("test:name=TestDeployer3");
  -      //the classloader mbean
  -      ObjectName classLoaderObjectName = new 
ObjectName("JBOSS-SYSTEM:spine=ServiceClassLoader");
  -      try
  -      {
  -         //check they aren't there already
  -         assertTrue("test mbean a already registered before deploy", 
!getServer().isRegistered(testObjectNameA));
  -         assertTrue("test mbean b already registered before deploy", 
!getServer().isRegistered(testObjectNameB));
  -         assertTrue("test mbean c already registered before deploy", 
!getServer().isRegistered(testObjectNameC));
  -         assertTrue("test mbean e already registered before deploy", 
!getServer().isRegistered(testObjectNameE));
  -
  -         //deploy C
  -         deployService(testUrlC);
  -
  -         //check the classloader-- is C's class there?
  -         //make sure we can create an mbean based on the class we just deployed.
  -         try
  -         {
  -            getServer().createMBean("org.jboss.test.jmx.mbeanc.TestDeployerC", 
testObjectName2, classLoaderObjectName);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not create mbean after class loaded in jsr" + e);
  -         }
  -         //now remove it again
  -         try
  -         {
  -            getServer().unregisterMBean(testObjectName2);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not remove mbean after class loaded in jsr" + e);
  -         }
  -
  -         //check deployment registered expected mbeans
  -         assertTrue("test mbean C not registered after deploy", 
getServer().isRegistered(testObjectNameC));
  -         assertTrue("test mbean A registered after deploy", 
!getServer().isRegistered(testObjectNameA));
  -         assertTrue("test mbean B registered after deploy", 
!getServer().isRegistered(testObjectNameB));
  -
  -         deployService(testUrlB);//This should work, check the rest..
  -         deployService(testUrlE);
  -
  -         assertTrue("test mbean C not registered after deploy", 
getServer().isRegistered(testObjectNameC));
  -         assertTrue("test mbean A registered after deploy", 
!getServer().isRegistered(testObjectNameA));
  -         //assertTrue("test mbean B not registered after deploy", 
getServer().isRegistered(testObjectNameB));
  -         assertTrue("test mbean E not registered after deploy", 
getServer().isRegistered(testObjectNameE));
  -
  -         //check for A class
  -         try
  -         {
  -            getServer().createMBean("org.jboss.test.jmx.mbeana.TestDeployerA", 
testObjectName2, classLoaderObjectName);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not create mbean after class loaded in jsr" + e);
  -         }
  -         //now remove it again
  -         try
  -         {
  -            getServer().unregisterMBean(testObjectName2);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not remove mbean after class loaded in jsr" + e);
  -         }
  -
  -         //check for B class
  -         try
  -         {
  -            getServer().createMBean("org.jboss.test.jmx.mbeanb.TestDeployerB", 
testObjectName2, classLoaderObjectName);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not create mbean after class loaded in jsr" + e);
  -         }
  -         //now remove it again
  -         try
  -         {
  -            getServer().unregisterMBean(testObjectName2);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not remove mbean after class loaded in jsr" + e);
  -         }
  -         //undeploy C, should leave A's class, 
  -         undeployService(testUrlC);
  -         //check for A class
  -         try
  -         {
  -            getServer().createMBean("org.jboss.test.jmx.mbeana.TestDeployerA", 
testObjectName2, classLoaderObjectName);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not create mbean after class loaded in jsr" + e);
  -         }
  -         //now remove it again
  -         try
  -         {
  -            getServer().unregisterMBean(testObjectName2);
  -         }
  -         catch (Exception e)
  -         {
  -            fail("could not remove mbean after class loaded in jsr" + e);
  -         }
  -         //undeploy E, should remove A's class, 
  -         undeployService(testUrlE);
  -         //check for A class
  -         try
  -         {
  -            getServer().createMBean("org.jboss.test.jmx.mbeana.TestDeployerA", 
testObjectName2, classLoaderObjectName);
  -            fail("could create mbeana after it should be unloaded");
  -         }
  -         catch (Exception e)
  -         {
  -         }
  -      }
  -      finally
  -      {
  -         try
  -         {
  -            undeployService(testUrlE);
  -         }
  -         catch (Exception e)
  -         {
  -         }
  -         try
  -         {
  -            undeployService(testUrlC);
  -         }
  -         catch (Exception e)
  -         {
  -         }
  -         try
  -         {
  -            undeployService(testUrlA);
  -         }
  -         catch (Exception e)
  -         {
  -         }
  -         try
  -         {
  -            undeployService(testUrlB);
  -         }
  -         catch (Exception e)
  -         {
  -         }
   
  -      }
  -   }
   
  -
       /**
        * The <code>testCopyLocalDir</code> method tests the local-directory element
        * in jboss-system.xml.  
  @@ -802,6 +602,12 @@
            }
         }
         return f.delete();
  +   }
  +
  +   protected boolean checkState(ObjectName mbean, int state) throws Exception
  +   {
  +      Integer mbeanState = (Integer)getServer().getAttribute(mbean, "State");
  +      return state == mbeanState.intValue();
      }
   
   }
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to