[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