[jboss-cvs] joramtests/src/main/java/org/jboss/test/jms ...

Clebert Suconic csuconic at jboss.com
Thu Jul 19 17:20:09 EDT 2007


  User: csuconic
  Date: 07/07/19 17:20:09

  Modified:    src/main/java/org/jboss/test/jms   JoramUnitTestCase.java
                        JoramTestDelegate.java
  Log:
  Fixing Admin factory for JBossMQ, as the AdminFactory wouldn't work with JBossMQ.
  
  Revision  Changes    Path
  1.2       +130 -28   joramtests/src/main/java/org/jboss/test/jms/JoramUnitTestCase.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: JoramUnitTestCase.java
  ===================================================================
  RCS file: /cvsroot/jboss/joramtests/src/main/java/org/jboss/test/jms/JoramUnitTestCase.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- JoramUnitTestCase.java	29 Mar 2007 04:28:36 -0000	1.1
  +++ JoramUnitTestCase.java	19 Jul 2007 21:20:09 -0000	1.2
  @@ -21,7 +21,13 @@
   */
   package org.jboss.test.jms;
   
  +import java.util.Hashtable;
  +
  +import junit.framework.AssertionFailedError;
   import junit.framework.Test;
  +import junit.framework.TestCase;
  +import junit.framework.TestListener;
  +import junit.framework.TestResult;
   import junit.framework.TestSuite;
   
   import org.jboss.test.AbstractTestCaseWithSetup;
  @@ -49,7 +55,7 @@
    * JoramUnitTestCase.
    * 
    * @author <a href="adrian at jboss.com">Adrian Brock</a>
  - * @version $Revision: 1.1 $
  + * @version $Revision: 1.2 $
    */
   public class JoramUnitTestCase extends AbstractTestCaseWithSetup
   {
  @@ -58,40 +64,136 @@
         super(name);
      }
   
  -   /**
  -    * Get the test delegate
  -    * 
  -    * @param clazz the test class
  -    * @param adminName the admin name
  -    * @return the delegate
  -    * @throws Exception for any error
  -    */
  +   
  +   
  +   /** Used to similuate tests while renaming its names. */
  +   private static class DummyTestCase extends TestCase
  +   {
  +       DummyTestCase(String name)
  +       {
  +           super (name);
  +       }
  +   }
  +   
      public static JoramTestDelegate getDelegate(Class clazz, String adminName) throws Exception
      {
         return new JoramTestDelegate(clazz, adminName);
      }
   
  -   public static Test getTestSuite(Class clazz) throws Exception
  +
  +   /**
  +    * One of the goals of this class also is to keep original classNames into testNames. So, you will realize several proxies existent here to
  +    * keep these class names while executing method names.
  +    */
  +   static class TestProxy extends TestCase
  +   {
  +       Hashtable hashTests = new Hashtable();
  +
  +
  +
  +       public TestProxy(Test testcase, String name)
  +       {
  +           super(name);
  +           this.testcase = testcase;
  +       }
  +
  +       public int countTestCases()
  +       {
  +           return testcase.countTestCases();
  +       }
  +
  +       /**
  +        * Create a dummy test renaming its content
  +        * @param test
  +        * @return
  +        */
  +       private Test createDummyTest(Test test)
  +       {
  +           Test dummyTest = (Test)hashTests.get(test);
  +           if (dummyTest==null)
  +           {
  +               if (test instanceof TestCase)
  +               {
  +                   dummyTest = new DummyTestCase(this.getName() + ":"+ ((TestCase)test).getName());
  +               } else
  +               if (test instanceof TestSuite)
  +               {
  +                   dummyTest = new DummyTestCase(this.getName() + ":"+ ((TestCase)test).getName());
  +               }
  +               else
  +               {
  +                   dummyTest = new DummyTestCase(test.getClass().getName());
  +               }
  +
  +               hashTests.put(test,dummyTest);
  +           }
  +
  +           return dummyTest;
  +       }
  +
  +       public void run(final TestResult result)
  +       {
  +           TestResult subResult = new TestResult();
  +           subResult.addListener(new TestListener()
  +           {
  +               public void addError(Test subtest, Throwable throwable)
  +               {
  +                   Test dummyTest = createDummyTest(subtest);
  +                   result.addError(dummyTest, throwable);
  +               }
  +
  +               public void addFailure(Test subtest, AssertionFailedError assertionFailedError)
  +               {
  +                   Test dummyTest = createDummyTest(subtest);
  +                   result.addFailure(dummyTest, assertionFailedError);
  +               }
  +
  +               public void endTest(Test subtest)
  +               {
  +                   Test dummyTest = createDummyTest(subtest);
  +                   result.endTest(dummyTest);
  +               }
  +
  +               public void startTest(Test subtest)
  +               {
  +                   Test dummyTest = createDummyTest(subtest);
  +                   result.startTest(dummyTest);
  +               }
  +           });
  +           testcase.run(subResult);
  +       }
  +
  +       Test testcase;
  +   }
  +
  +   
  +
  +   
  +
  +   public static junit.framework.Test getTestSuite(Class clazz) throws Exception
      {
         TestSuite suite = new TestSuite();
  -      suite.addTest(ConnectionTest.suite());
  -      suite.addTest(TopicConnectionTest.suite());
  -      suite.addTest(MessageBodyTest.suite());
  -      suite.addTest(MessageDefaultTest.suite());
  -      suite.addTest(MessageTypeTest.suite());
  -      suite.addTest(MessageHeaderTest.suite());
  -      suite.addTest(JMSXPropertyTest.suite());
  -      suite.addTest(MessagePropertyConversionTest.suite());
  -      suite.addTest(MessagePropertyTest.suite());
  -      suite.addTest(QueueBrowserTest.suite());
  -      suite.addTest(TemporaryQueueTest.suite());
  -      suite.addTest(SelectorSyntaxTest.suite());
  -      suite.addTest(SelectorTest.suite());
  -      suite.addTest(QueueSessionTest.suite());
  -      suite.addTest(SessionTest.suite());
  -      suite.addTest(TopicSessionTest.suite());
  -      suite.addTest(UnifiedSessionTest.suite());
  -      suite.addTest(TemporaryTopicTest.suite());
  +
  +      suite.addTest(new TestProxy(TopicConnectionTest.suite(),TopicConnectionTest.class.getName()));
  +      suite.addTest(new TestProxy(ConnectionTest.suite(), ConnectionTest.class.getName()));
  +      suite.addTest(new TestProxy(MessageBodyTest.suite(), MessageBodyTest.class.getName()));
  +      suite.addTest(new TestProxy(MessageDefaultTest.suite(), MessageDefaultTest.class.getName()));
  +      suite.addTest(new TestProxy(MessageTypeTest.suite(), MessageTypeTest.class.getName()));
  +      suite.addTest(new TestProxy(MessageHeaderTest.suite(), MessageHeaderTest.class.getName()));
  +      suite.addTest(new TestProxy(JMSXPropertyTest.suite(), JMSXPropertyTest.class.getName()));
  +      suite.addTest(new TestProxy(MessagePropertyConversionTest.suite(), MessagePropertyConversionTest.class.getName()));
  +      suite.addTest(new TestProxy(MessagePropertyTest.suite(), MessagePropertyTest.class.getName()));
  +      suite.addTest(new TestProxy(QueueBrowserTest.suite(), QueueBrowserTest.class.getName()));
  +      suite.addTest(new TestProxy(TemporaryQueueTest.suite(), TemporaryQueueTest.class.getName()));
  +      suite.addTest(new TestProxy(SelectorSyntaxTest.suite(), SelectorSyntaxTest.class.getName()));
  +      suite.addTest(new TestProxy(SelectorTest.suite(), SelectorTest.class.getName()));
  +      suite.addTest(new TestProxy(QueueSessionTest.suite(), QueueSessionTest.class.getName()));
  +      suite.addTest(new TestProxy(SessionTest.suite(), SessionTest.class.getName()));
  +      suite.addTest(new TestProxy(TopicSessionTest.suite(), TopicSessionTest.class.getName()));
  +      suite.addTest(new TestProxy(UnifiedSessionTest.suite(), UnifiedSessionTest.class.getName()));
  +      suite.addTest(new TestProxy(TemporaryTopicTest.suite(), TemporaryTopicTest.class.getName()));
  +      
  +
         return new AbstractTestSetup(clazz, suite);
      }
   }
  
  
  
  1.2       +3 -2      joramtests/src/main/java/org/jboss/test/jms/JoramTestDelegate.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: JoramTestDelegate.java
  ===================================================================
  RCS file: /cvsroot/jboss/joramtests/src/main/java/org/jboss/test/jms/JoramTestDelegate.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- JoramTestDelegate.java	29 Mar 2007 04:28:36 -0000	1.1
  +++ JoramTestDelegate.java	19 Jul 2007 21:20:09 -0000	1.2
  @@ -24,12 +24,13 @@
   import java.lang.reflect.Constructor;
   
   import org.jboss.test.AbstractTestDelegate;
  +import org.objectweb.jtests.jms.admin.Admin;
   
   /**
    * JoramTestDelegate.
    * 
  - * @author <a href="adrian at jboss.com">Adrian Brock</a>
  - * @version $Revision: 1.1 $
  + * @author <a href="adrian at jboss.x`com">Adrian Brock</a>
  + * @version $Revision: 1.2 $
    */
   public class JoramTestDelegate extends AbstractTestDelegate
   {
  @@ -46,7 +47,7 @@
         super.setUp();
         Class adminClass = Thread.currentThread().getContextClassLoader().loadClass(adminName);
         Constructor constructor = adminClass.getConstructor(new Class[] { Class.class });
  -      AbstractAdmin admin = (AbstractAdmin) constructor.newInstance(new Object[] { clazz } );
  +      Admin admin = (Admin) constructor.newInstance(new Object[] { clazz } );
         GenericAdmin.delegate = admin; 
      }
   }
  
  
  



More information about the jboss-cvs-commits mailing list