Author: julien(a)jboss.com
Date: 2007-10-15 16:06:37 -0400 (Mon, 15 Oct 2007)
New Revision: 8661
Added:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/EndTestSuiteEvent.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/StartTestSuiteEvent.java
Modified:
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/RemoteTestDriverClient.java
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/TestConversation.java
modules/test/trunk/unit/src/main/org/jboss/test/unit/AllTests.java
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/EventList.java
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/GenericTestRunnerTests.java
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/POJOTestRunnerTests.java
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/TestDriverRunnerTests.java
modules/test/trunk/unit/src/main/org/jboss/unit/report/impl/writer/PrintListener.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/DelegateRunnerEventFilter.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/driver/TestDriverRunner.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/generic/GenericTestRunner.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/pojo/POJOTestRunner.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/ModelBuilder.java
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/generic/GenericTestSuiteDef.java
modules/test/trunk/unit/src/resources/jboss-unit-jar/org/jboss/unit/runner/model/jboss-unit_1_0.xsd
modules/test/trunk/unit/src/resources/test/org/jboss/test/unit/runner/model/f2.xml
Log:
- introduced test suite events
- improve the console formatter to look like junit console report
Modified:
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/RemoteTestDriverClient.java
===================================================================
---
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/RemoteTestDriverClient.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/RemoteTestDriverClient.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -36,6 +36,7 @@
import org.jboss.portal.test.framework.server.NodeId;
import org.jboss.portal.test.framework.server.Node;
import org.jboss.portal.test.framework.server.NodeManager;
+import org.jboss.portal.test.framework.deployment.Deployer;
import org.jboss.kernel.plugins.bootstrap.basic.BasicBootstrap;
import org.jboss.kernel.plugins.deployment.xml.BeanXMLDeployer;
import org.jboss.kernel.spi.deployment.KernelDeployment;
@@ -72,6 +73,9 @@
/** . */
private String archivePath;
+ /** . */
+ private Deployer deployer;
+
// public String getInitialNodeId()
// {
// return initialNodeId;
@@ -109,6 +113,17 @@
this.protocolHandler = protocolHandler;
}
+ public Deployer getDeployer()
+ {
+ return deployer;
+ }
+
+ @Inject(bean="Deployer")
+ public void setDeployer(Deployer deployer)
+ {
+ this.deployer = deployer;
+ }
+
public RemoteTestDriver getServer(Node node)
{
return (RemoteTestDriver)node.lookupService(RemoteTestDriver.SERVICE_ID);
@@ -154,6 +169,14 @@
beanDeployer = new BeanXMLDeployer(getKernel());
deployment = beanDeployer.deploy(url);
beanDeployer.validate();
+
+ // Perform the remote deployment if necessary
+ String archiveId = context.getProperty("archiveId");
+ if (archiveId != null)
+ {
+ Node node = nodeManager.getNode(NodeId.DEFAULT);
+ deployer.deploy(archivePath, archiveId, node);
+ }
}
catch (Throwable throwable)
{
Modified:
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/TestConversation.java
===================================================================
---
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/TestConversation.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/remote/src/main/org/jboss/unit/remote/driver/TestConversation.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -26,9 +26,11 @@
import org.jboss.unit.driver.DriverCommand;
import org.jboss.unit.driver.command.StartTestCommand;
import org.jboss.unit.driver.response.EndTestResponse;
+import org.jboss.unit.driver.response.FailureResponse;
import org.jboss.unit.remote.RequestContext;
import org.jboss.unit.remote.ResponseContext;
import org.jboss.unit.TestId;
+import org.jboss.unit.Failure;
import org.jboss.portal.test.framework.server.Node;
import java.util.Map;
@@ -109,7 +111,7 @@
DriverResponse response = respCtx.getResponse();
//
- if (response instanceof EndTestResponse)
+ if (response instanceof EndTestResponse || response instanceof FailureResponse)
{
return response;
}
@@ -118,6 +120,12 @@
commandContext = protocolHandler.handleResponse(this, respCtx);
//
+ if (commandContext == null)
+ {
+ return new FailureResponse(Failure.createErrorFailure("Response " +
response + " was not handled"));
+ }
+
+ //
return handleCommand(commandContext);
}
Modified: modules/test/trunk/unit/src/main/org/jboss/test/unit/AllTests.java
===================================================================
--- modules/test/trunk/unit/src/main/org/jboss/test/unit/AllTests.java 2007-10-15 19:28:21
UTC (rev 8660)
+++ modules/test/trunk/unit/src/main/org/jboss/test/unit/AllTests.java 2007-10-15 20:06:37
UTC (rev 8661)
@@ -66,11 +66,11 @@
//
BlahTests.main(args);
-
+
//
BlahTestTwo.main(args);
-
- //
+
+ //
JUnitReporterTests.main(args);
}
}
Modified: modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/EventList.java
===================================================================
--- modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/EventList.java 2007-10-15
19:28:21 UTC (rev 8660)
+++ modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/EventList.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -31,6 +31,8 @@
import org.jboss.unit.runner.event.StartTestEvent;
import org.jboss.unit.runner.event.EndTestEvent;
import org.jboss.unit.runner.event.EndRunnerEvent;
+import org.jboss.unit.runner.event.StartTestSuiteEvent;
+import org.jboss.unit.runner.event.EndTestSuiteEvent;
import static org.jboss.unit.api.Assert.*;
import org.jboss.unit.TestId;
@@ -59,6 +61,34 @@
return assertStartRunnerEvent(event);
}
+ protected StartTestSuiteEvent assertStartTestSuiteEvent(int index, TestId
expectedTestId)
+ {
+ assertTrue(events.size() > index);
+ TestRunnerEvent event = assertNotNull(events.get(index));
+ return assertStartTestSuiteEvent(event, expectedTestId);
+ }
+
+ protected StartTestSuiteEvent assertStartTestSuiteEvent(TestRunnerEvent event, TestId
expectedTestId)
+ {
+ StartTestSuiteEvent startEvent = assertInstanceOf(event,
StartTestSuiteEvent.class);
+ assertEquals(expectedTestId, startEvent.getTestId());
+ return startEvent;
+ }
+
+ protected EndTestSuiteEvent assertEndTestSuiteEvent(int index, TestId expectedTestId)
+ {
+ assertTrue(events.size() > index);
+ TestRunnerEvent event = assertNotNull(events.get(index));
+ return assertEndTestSuiteEvent(event, expectedTestId);
+ }
+
+ protected EndTestSuiteEvent assertEndTestSuiteEvent(TestRunnerEvent event, TestId
expectedTestId)
+ {
+ EndTestSuiteEvent endEvent = assertInstanceOf(event, EndTestSuiteEvent.class);
+ assertEquals(expectedTestId, endEvent.getTestId());
+ return endEvent;
+ }
+
protected StartTestEvent assertStartTestEvent(int index, TestId expectedTestId)
{
assertTrue(events.size() > index);
Modified:
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/GenericTestRunnerTests.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/GenericTestRunnerTests.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/GenericTestRunnerTests.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -75,7 +75,7 @@
Driver1.init();
SimpleTestCaseInfo fooInfo = new SimpleTestCaseInfo("foo");
Driver1.testSuiteInfo.addTest(fooInfo);
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
suite.setProperty("foo_def", "foo_def_value");
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport());
@@ -89,7 +89,7 @@
Driver1.init();
SimpleTestCaseInfo fooInfo = new SimpleTestCaseInfo("foo");
Driver1.testSuiteInfo.addTest(fooInfo);
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
GenericTestRunner runner = new GenericTestRunner(suite);
Map<String, String> properties = new HashMap<String, String>();
properties.put("foo_runner", "foo_runner_value");
@@ -104,7 +104,7 @@
Driver1.init();
SimpleTestCaseInfo fooInfo = new SimpleTestCaseInfo("foo");
Driver1.testSuiteInfo.addTest(fooInfo);
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
suite.setProperty("foo_def", "foo_def_value");
suite.setProperty("bar", "bar_def_value");
GenericTestRunner runner = new GenericTestRunner(suite);
@@ -125,7 +125,7 @@
SimpleTestCaseInfo fooInfo = new SimpleTestCaseInfo("foo");
fooInfo.addParameter(new SimpleParameterInfo("abc"));
Driver1.testSuiteInfo.addTest(fooInfo);
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
TestDef foo = new TestDef(new TestId("foo"));
suite.addTest(foo);
ParametersDef fooParameters = new ParametersDef();
@@ -134,13 +134,14 @@
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(events));
- assertEquals(6, events.events.size());
+ assertEquals(8, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertStartTestEvent(1, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(2, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertStartTestEvent(3, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(4, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertEndRunnerEvent(5);
+ events.assertStartTestSuiteEvent(1, new TestId());
+ events.assertStartTestEvent(2, new TestId("foo"));
+ events.assertEndTestEvent(3, new TestId("foo"), new TestSuccess(0));
+ events.assertStartTestEvent(4, new TestId("foo"));
+ events.assertEndTestEvent(5, new TestId("foo"), new TestSuccess(0));
+ events.assertEndRunnerEvent(7);
assertEquals(list(new TestId("foo"), new TestId("foo")),
Driver1.ids);
HashMap<String, String> expectedParametrization1 = new HashMap<String,
String>();
HashMap<String, String> expectedParametrization2 = new HashMap<String,
String>();
@@ -155,7 +156,7 @@
SimpleTestCaseInfo fooInfo = new SimpleTestCaseInfo("foo");
fooInfo.addParameter(new SimpleParameterInfo("abc"));
Driver1.testSuiteInfo.addTest(fooInfo);
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
TestDef foo = new TestDef(new TestId("foo"));
suite.addTest(foo);
ParametersDef fooParameters = new ParametersDef();
@@ -166,11 +167,11 @@
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(new ParametrizationSet(parametrizations),
events));
- assertEquals(4, events.events.size());
+ assertEquals(6, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertStartTestEvent(1, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(2, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertEndRunnerEvent(3);
+ events.assertStartTestEvent(2, new TestId("foo"));
+ events.assertEndTestEvent(3, new TestId("foo"), new TestSuccess(0));
+ events.assertEndRunnerEvent(5);
assertEquals(list(new TestId("foo")), Driver1.ids);
HashMap<String, String> expectedParametrization1 = new HashMap<String,
String>();
expectedParametrization1.put("abc", "def");
@@ -180,13 +181,13 @@
private static void testNoTestCase()
{
Driver1.init();
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(events));
- assertEquals(2, events.events.size());
+ assertEquals(4, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertEndRunnerEvent(1);
+ events.assertEndRunnerEvent(3);
assertEquals(list(), Driver1.ids);
assertEquals(list(), Driver1.parametrizations);
}
@@ -195,16 +196,16 @@
{
Driver1.init();
Driver1.testSuiteInfo.addTest(new SimpleTestCaseInfo("foo"));
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
suite.addTest(new TestDef(new TestId("foo")));
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(events));
- assertEquals(4, events.events.size());
+ assertEquals(6, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertStartTestEvent(1, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(2, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertEndRunnerEvent(3);
+ events.assertStartTestEvent(2, new TestId("foo"));
+ events.assertEndTestEvent(3, new TestId("foo"), new TestSuccess(0));
+ events.assertEndRunnerEvent(5);
assertEquals(list(new TestId("foo")), Driver1.ids);
assertEquals(list(new HashMap()), Driver1.parametrizations);
}
@@ -214,16 +215,16 @@
Driver1.init();
Driver1.testSuiteInfo.addTest(new SimpleTestCaseInfo("foo"));
Driver1.testSuiteInfo.addTest(new SimpleTestCaseInfo("bar"));
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
suite.addTest(new TestDef(new TestId("foo")));
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(events));
- assertEquals(4, events.events.size());
+ assertEquals(6, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertStartTestEvent(1, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(2, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertEndRunnerEvent(3);
+ events.assertStartTestEvent(2, new TestId("foo"));
+ events.assertEndTestEvent(3, new TestId("foo"), new TestSuccess(0));
+ events.assertEndRunnerEvent(5);
assertEquals(list(new TestId("foo")), Driver1.ids);
assertEquals(list(new HashMap()), Driver1.parametrizations);
}
@@ -233,17 +234,17 @@
Driver1.init();
Driver1.testSuiteInfo.addTest(new SimpleTestCaseInfo("foo"));
Driver1.testSuiteInfo.addTest(new SimpleTestCaseInfo("bar"));
- GenericTestSuiteDef suite = new GenericTestSuiteDef("generic",
Driver1.class.getName());
+ GenericTestSuiteDef suite = new GenericTestSuiteDef(Driver1.class.getName());
EventList events = new EventList();
GenericTestRunner runner = new GenericTestRunner(suite);
runner.run(new TestRunnerContextSupport(events));
- assertEquals(6, events.events.size());
+ assertEquals(8, events.events.size());
events.assertStartRunnerEvent(0);
- events.assertStartTestEvent(1, new TestId(Driver1.class.getName(),
"foo"));
- events.assertEndTestEvent(2, new TestId(Driver1.class.getName(), "foo"),
new TestSuccess(0));
- events.assertStartTestEvent(3, new TestId(Driver1.class.getName(),
"bar"));
- events.assertEndTestEvent(4, new TestId(Driver1.class.getName(), "bar"),
new TestSuccess(0));
- events.assertEndRunnerEvent(5);
+ events.assertStartTestEvent(2, new TestId("foo"));
+ events.assertEndTestEvent(3, new TestId("foo"), new TestSuccess(0));
+ events.assertStartTestEvent(4, new TestId("bar"));
+ events.assertEndTestEvent(5, new TestId("bar"), new TestSuccess(0));
+ events.assertEndRunnerEvent(7);
assertEquals(list(new TestId("foo"), new TestId("bar")),
Driver1.ids);
assertEquals(list(new HashMap(), new HashMap()), Driver1.parametrizations);
}
Modified:
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/POJOTestRunnerTests.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/POJOTestRunnerTests.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/POJOTestRunnerTests.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -75,11 +75,11 @@
assertEquals("bar_def", pojo1_1.foo);
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId(POJO1.class.getName(),
"test"));
- listener.assertEndTestEvent(2, new TestId(POJO1.class.getName(), "test"),
new TestSuccess(0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestEvent(2, new TestId("test"));
+ listener.assertEndTestEvent(3, new TestId("test"), new TestSuccess(0));
+ listener.assertEndRunnerEvent(5);
}
private static void testPOJO1_2()
@@ -110,13 +110,13 @@
assertEquals("bar_runtime_2", pojo1_2.foo);
//
- assertEquals(6, listener.events.size());
+ assertEquals(8, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId(POJO1.class.getName(),
"test"));
- listener.assertEndTestEvent(2, new TestId(POJO1.class.getName(), "test"),
new TestSuccess(0));
- listener.assertStartTestEvent(3, new TestId(POJO1.class.getName(),
"test"));
- listener.assertEndTestEvent(4, new TestId(POJO1.class.getName(), "test"),
new TestSuccess(0));
- listener.assertEndRunnerEvent(5);
+ listener.assertStartTestEvent(2, new TestId("test"));
+ listener.assertEndTestEvent(3, new TestId("test"), new TestSuccess(0));
+ listener.assertStartTestEvent(4, new TestId("test"));
+ listener.assertEndTestEvent(5, new TestId("test"), new TestSuccess(0));
+ listener.assertEndRunnerEvent(7);
}
public static class POJO1
Modified:
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/TestDriverRunnerTests.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/TestDriverRunnerTests.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/test/unit/runner/TestDriverRunnerTests.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -34,6 +34,7 @@
import org.jboss.unit.driver.response.FailureResponse;
import org.jboss.unit.info.impl.SimpleTestCaseInfo;
import org.jboss.unit.info.impl.SimpleParameterInfo;
+import org.jboss.unit.info.impl.SimpleTestSuiteInfo;
import org.jboss.unit.TestId;
import org.jboss.unit.FailureType;
import org.jboss.unit.Failure;
@@ -71,8 +72,43 @@
//
testInvokeTestSuite();
+
+ //
+ testEvents1();
}
+ private static void testEvents1()
+ {
+ TestDriverImpl testDriver = new TestDriverImpl()
+ {
+ public DriverResponse invoke2(TestId id, DriverCommand command)
+ {
+ return new EndTestResponse();
+ }
+ };
+ SimpleTestSuiteInfo fooSuite = new SimpleTestSuiteInfo("Foo");
+ fooSuite.addTest(new SimpleTestCaseInfo("Bar"));
+ testDriver.info.addTest(fooSuite);
+ TestDriverRunner runner = new TestDriverRunner(testDriver, new
TestId("Foo","Bar"));
+ EventList listener = new EventList();
+
+ //
+ runner.run(new TestRunnerContextSupport(listener));
+
+ //
+ testDriver.assertIdList(list(new TestId("Foo", "Bar")));
+
+ //
+ assertEquals(8, listener.events.size());
+ listener.assertStartRunnerEvent(0);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestSuiteEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(4, new TestId("Foo", "Bar"), new
TestSuccess(0));
+ listener.assertEndTestSuiteEvent(5, new TestId("Foo"));
+ listener.assertEndTestSuiteEvent(6, new TestId());
+ listener.assertEndRunnerEvent(7);
+ }
+
private static void testInvokeTestSuite()
{
TestDriverImpl testDriver = new TestDriverImpl()
@@ -96,13 +132,15 @@
testDriver.assertIdList(list(new TestId("Foo"), new
TestId("Bar")));
//
- assertEquals(6, listener.events.size());
+ assertEquals(8, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestSuccess(0));
- listener.assertStartTestEvent(3, new TestId("Bar"));
- listener.assertEndTestEvent(4, new TestId("Bar"), new TestSuccess(0));
- listener.assertEndRunnerEvent(5);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestSuccess(0));
+ listener.assertStartTestEvent(4, new TestId("Bar"));
+ listener.assertEndTestEvent(5, new TestId("Bar"), new TestSuccess(0));
+ listener.assertEndTestSuiteEvent(6, new TestId());
+ listener.assertEndRunnerEvent(7);
}
private static void testInvokeTestCaseWithParameters1()
@@ -132,17 +170,19 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestSuccess(0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestSuccess(0));
+ listener.assertEndTestSuiteEvent(4, new TestId());
+ listener.assertEndRunnerEvent(5);
// Check parametrization
Set<Map<String,String>> s1 = new HashSet<Map<String,
String>>();
s1.add(new HashMap<String,String>());
Set<Map<String,String>> s2 = new HashSet<Map<String,
String>>();
-
s2.add(((EndTestEvent)listener.events.get(2)).getTestResult().getParametrization());
+
s2.add(((EndTestEvent)listener.events.get(3)).getTestResult().getParametrization());
assertEquals(s1, s2);
}
@@ -177,13 +217,15 @@
testDriver.assertIdList(list(new TestId("Foo"), new
TestId("Foo")));
//
- assertEquals(6, listener.events.size());
+ assertEquals(8, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestSuccess(0));
- listener.assertStartTestEvent(3, new TestId("Foo"));
- listener.assertEndTestEvent(4, new TestId("Foo"), new TestSuccess(0));
- listener.assertEndRunnerEvent(5);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestSuccess(0));
+ listener.assertStartTestEvent(4, new TestId("Foo"));
+ listener.assertEndTestEvent(5, new TestId("Foo"), new TestSuccess(0));
+ listener.assertEndTestSuiteEvent(6, new TestId());
+ listener.assertEndRunnerEvent(7);
// Check parametrization
Set<Map<String,String>> s1 = new HashSet<Map<String,
String>>();
@@ -194,8 +236,8 @@
s1.add(p1);
s1.add(p2);
Set<Map<String,String>> s2 = new HashSet<Map<String,
String>>();
-
s2.add(((EndTestEvent)listener.events.get(2)).getTestResult().getParametrization());
-
s2.add(((EndTestEvent)listener.events.get(4)).getTestResult().getParametrization());
+
s2.add(((EndTestEvent)listener.events.get(3)).getTestResult().getParametrization());
+
s2.add(((EndTestEvent)listener.events.get(5)).getTestResult().getParametrization());
assertEquals(s1, s2);
}
@@ -214,9 +256,9 @@
testDriver.assertIdList(new ArrayList<TestId>());
//
- assertEquals(2, listener.events.size());
+ assertEquals(4, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertEndRunnerEvent(1);
+ listener.assertEndRunnerEvent(3);
}
private static void testTestDriverInvokeTestCaseReturnsNull()
@@ -233,11 +275,13 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
+ listener.assertEndTestSuiteEvent(4, new TestId());
+ listener.assertEndRunnerEvent(5);
}
private static void testTestDriverInvokeTestCaseReturnsAnEndTestResponse()
@@ -260,11 +304,13 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestSuccess(0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestSuccess(0));
+ listener.assertEndTestSuiteEvent(4, new TestId());
+ listener.assertEndRunnerEvent(5);
}
private static void testTestDriverInvokeTestCaseReturnsAFailureResponse()
@@ -287,11 +333,13 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
+ listener.assertEndTestSuiteEvent(4, new TestId());
+ listener.assertEndRunnerEvent(5);
}
private static void testTestDriverInvokeTestCaseThrowsRuntimeException()
@@ -314,11 +362,13 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(4, listener.events.size());
+ assertEquals(6, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
- listener.assertEndTestEvent(2, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
- listener.assertEndRunnerEvent(3);
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
+ listener.assertEndTestEvent(3, new TestId("Foo"), new TestFailure(new
Failure("", FailureType.ERROR), 0));
+ listener.assertEndTestSuiteEvent(4, new TestId());
+ listener.assertEndRunnerEvent(5);
}
private static void testTestDriverInvokeTestCaseThrowsError()
@@ -351,9 +401,10 @@
testDriver.assertIdList(list(new TestId("Foo")));
//
- assertEquals(2, listener.events.size());
+ assertEquals(3, listener.events.size());
listener.assertStartRunnerEvent(0);
- listener.assertStartTestEvent(1, new TestId("Foo"));
+ listener.assertStartTestSuiteEvent(1, new TestId());
+ listener.assertStartTestEvent(2, new TestId("Foo"));
}
}
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/report/impl/writer/PrintListener.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/report/impl/writer/PrintListener.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/report/impl/writer/PrintListener.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -32,13 +32,18 @@
import org.jboss.unit.runner.event.RunnerFailureEvent;
import org.jboss.unit.runner.event.StartRunnerEvent;
import org.jboss.unit.runner.event.StartTestEvent;
+import org.jboss.unit.runner.event.StartTestSuiteEvent;
+import org.jboss.unit.runner.event.EndTestSuiteEvent;
import org.jboss.unit.runner.results.TestFailure;
import org.jboss.unit.runner.results.TestSuccess;
-import java.io.PrintStream;
import java.io.Writer;
import java.io.PrintWriter;
import java.io.OutputStream;
+import java.text.NumberFormat;
+import java.util.LinkedList;
+import java.util.Iterator;
+import java.util.Map;
/**
* A listener which output messages on a specified stream.
@@ -50,8 +55,20 @@
{
/** . */
+ private final static String NEW_LINE =
System.getProperty("line.separator");
+
+ /** . */
+ private NumberFormat FORMAT = NumberFormat.getInstance();
+
+ /** . */
private final PrintWriter out;
+ /** The test suite stats. */
+ private LinkedList<SuiteStat> stack = new LinkedList<SuiteStat>();
+
+ /** The current test case name. */
+ private String currentTestCaseName;
+
/**
* Builds with the <code>System.out</code> print stream.
*/
@@ -113,30 +130,127 @@
out.println("Runner failure: " + failure.getType() + " " +
failure.getMessage());
failure.getCause().printStackTrace(out);
}
+ else if (event instanceof StartTestSuiteEvent)
+ {
+ StartTestSuiteEvent stse = (StartTestSuiteEvent)event;
+ stack.add(new SuiteStat(stse.getTestInfo().getName()));
+ }
else if (event instanceof StartTestEvent)
{
- StartTestEvent startTestEvent = (StartTestEvent)event;
- out.println("Starting id=" + startTestEvent.getTestId() + "
name=" + startTestEvent.getTestInfo().getName() + " description=" +
startTestEvent.getTestInfo().getDescription());
+ StartTestEvent ste = (StartTestEvent)event;
+ currentTestCaseName = ste.getTestInfo().getName();
}
+ else if (event instanceof EndTestSuiteEvent)
+ {
+ StringBuffer tmp = new StringBuffer();
+ for (Iterator<SuiteStat> i = stack.iterator();i.hasNext();)
+ {
+ SuiteStat stat = i.next();
+ tmp.append(stat.name);
+ if (i.hasNext())
+ {
+ tmp.append('.');
+ }
+ }
+
+ //
+ SuiteStat stat = stack.removeLast();
+
+ StringBuffer sb = new StringBuffer("Testsuite: ");
+ sb.append(tmp);
+ sb.append(NEW_LINE);
+ sb.append("Tests run: ");
+ sb.append(stat.count);
+ sb.append(", Failures: ");
+ sb.append(stat.failures);
+ sb.append(", Errors: ");
+ sb.append(stat.errors);
+ sb.append(", Time elapsed: ");
+ sb.append(FORMAT.format((System.currentTimeMillis() - stat.timestamp) /
1000.0));
+ sb.append(" sec");
+ sb.append(NEW_LINE);
+ out.print(sb);
+
+ }
else if (event instanceof EndTestEvent)
{
+ stack.getLast().count++;
+
+ //
EndTestEvent endTestEvent = (EndTestEvent)event;
- TestId testId = endTestEvent.getTestId();
TestResult testResult = endTestEvent.getTestResult();
+
+ StringBuffer name = new StringBuffer(currentTestCaseName);
+ Map<String, String> parametrization = testResult.getParametrization();
+ if (!parametrization.isEmpty())
+ {
+ name.append('?');
+ for (Iterator<Map.Entry<String, String>> i =
parametrization.entrySet().iterator();i.hasNext();)
+ {
+ Map.Entry entry = i.next();
+ name.append(entry.getKey()).append('=').append(entry.getValue());
+ if (i.hasNext())
+ {
+ name.append('&');
+ }
+ }
+ }
+
+ //
+ out.println("Testcase: " + name + " took " +
FORMAT.format(testResult.getDurationMillis() / 1000.0) + " sec");
+
if (testResult instanceof TestSuccess)
{
- out.println("Test id=" + testId + " is successful (" +
testResult.getDurationMillis() + "ms)");
}
else if (testResult instanceof TestFailure)
{
TestFailure testFailure = (TestFailure)testResult;
Failure failure = testFailure.getFailure();
- out.println("Test id=" + testId + " " + failure.getType()
+ " failed " + failure.getMessage() + " (" +
testResult.getDurationMillis() + "ms)");
+
+ //
+ switch(failure.getType())
+ {
+ case ASSERTION:
+ out.println("\tFAILED");
+ stack.getLast().failures++;
+ break;
+ case ERROR:
+ out.println("\tCaused an ERROR");
+ stack.getLast().errors++;
+ break;
+ }
+
+ //
+ out.print(failure.getMessage());
if (failure.getCause() != null)
{
failure.getCause().printStackTrace(out);
}
+ out.println();
}
}
}
+
+ private static class SuiteStat
+ {
+ /** . */
+ private final String name;
+
+ /** . */
+ private int failures = 0;
+
+ /** . */
+ private int errors = 0;
+
+ /** . */
+ private int count = 0;
+
+ /** . */
+ private long timestamp = System.currentTimeMillis();
+
+ private SuiteStat(String name)
+ {
+ this.name = name;
+ }
+ }
}
Added:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/EndTestSuiteEvent.java
===================================================================
--- modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/EndTestSuiteEvent.java
(rev 0)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/EndTestSuiteEvent.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -0,0 +1,47 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.unit.runner.event;
+
+import org.jboss.unit.TestId;
+import org.jboss.unit.runner.TestRunnerEvent;
+
+/**
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public class EndTestSuiteEvent extends TestRunnerEvent
+{
+
+ /** . */
+ private final TestId testId;
+
+ public EndTestSuiteEvent(TestId testId)
+ {
+ this.testId = testId;
+ }
+
+ public TestId getTestId()
+ {
+ return testId;
+ }
+}
Added:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/StartTestSuiteEvent.java
===================================================================
--- modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/StartTestSuiteEvent.java
(rev 0)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/event/StartTestSuiteEvent.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -0,0 +1,57 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.unit.runner.event;
+
+import org.jboss.unit.runner.TestRunnerEvent;
+import org.jboss.unit.TestId;
+import org.jboss.unit.info.TestSuiteInfo;
+
+/**
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public class StartTestSuiteEvent extends TestRunnerEvent
+{
+
+ /** . */
+ private final TestId testId;
+
+ /** . */
+ private final TestSuiteInfo testInfo;
+
+ public StartTestSuiteEvent(TestId testId, TestSuiteInfo testInfo)
+ {
+ this.testId = testId;
+ this.testInfo = testInfo;
+ }
+
+ public TestId getTestId()
+ {
+ return testId;
+ }
+
+ public TestSuiteInfo getTestInfo()
+ {
+ return testInfo;
+ }
+}
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/DelegateRunnerEventFilter.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/DelegateRunnerEventFilter.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/DelegateRunnerEventFilter.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -26,9 +26,6 @@
import org.jboss.unit.runner.TestRunnerEvent;
import org.jboss.unit.runner.event.StartRunnerEvent;
import org.jboss.unit.runner.event.EndRunnerEvent;
-import org.jboss.unit.runner.event.StartTestEvent;
-import org.jboss.unit.runner.event.EndTestEvent;
-import org.jboss.unit.TestId;
/**
* <p>The goal of this listener class is to route events to a target listener and
operate on the events
@@ -52,14 +49,10 @@
{
/** . */
- private String testName;
-
- /** . */
private TestRunnerEventListener listener;
- public DelegateRunnerEventFilter(String testName, TestRunnerEventListener listener)
+ public DelegateRunnerEventFilter(TestRunnerEventListener listener)
{
- this.testName = testName;
this.listener = listener;
}
@@ -69,18 +62,6 @@
{
return;
}
- if (event instanceof StartTestEvent)
- {
- StartTestEvent ste = (StartTestEvent)event;
- TestId newId = new TestId(testName, ste.getTestId());
- event = new StartTestEvent(newId, ste.getTestInfo());
- }
- else if (event instanceof EndTestEvent)
- {
- EndTestEvent ste = (EndTestEvent)event;
- TestId newId = new TestId(testName, ste.getTestId());
- event = new EndTestEvent(newId, ste.getTestResult());
- }
listener.onEvent(event);
}
}
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/driver/TestDriverRunner.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/driver/TestDriverRunner.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/driver/TestDriverRunner.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -39,6 +39,8 @@
import org.jboss.unit.runner.event.StartTestEvent;
import org.jboss.unit.runner.event.EndTestEvent;
import org.jboss.unit.runner.event.RunnerFailureEvent;
+import org.jboss.unit.runner.event.StartTestSuiteEvent;
+import org.jboss.unit.runner.event.EndTestSuiteEvent;
import org.jboss.unit.runner.AbstractTestRunner;
import org.jboss.unit.runner.TestResult;
import org.jboss.unit.runner.TestRunnerContext;
@@ -114,10 +116,7 @@
TestSuiteInfo info = (TestSuiteInfo)driver.getInfo();
//
- TestInfo testInfo = info.findTest(testId);
-
- //
- internalRun(context, testInfo, testId);
+ internalRun(context, info, testId, new TestId());
}
finally
{
@@ -133,68 +132,119 @@
}
}
- private void internalRun(TestRunnerContext context, TestInfo testInfo, TestId testId)
+ private void internalRun(final TestRunnerContext context, final TestInfo currentInfo,
final TestId targetId, final TestId currentId)
{
- if (context.getFilter().include(testId, testInfo))
+ if (currentId.equals(targetId))
{
- if (testInfo instanceof TestSuiteInfo)
- {
- TestSuiteInfo testSuiteInfo = (TestSuiteInfo)testInfo;
-
- //
- for (String name : testSuiteInfo.getNames())
+// if (context.getFilter().include(currentId, currentInfo))
+// {
+ if (currentInfo instanceof TestSuiteInfo)
{
- TestInfo childTestInfo = testSuiteInfo.getTest(name);
- internalRun(context, childTestInfo, new TestId(testId, name));
- }
- }
- else
- {
- TestCaseInfo testCaseInfo = (TestCaseInfo)testInfo;
+ TestSuiteInfo testSuiteInfo = (TestSuiteInfo)currentInfo;
- //
- for (Map<String,String> parametrization :
context.getParametrizations().enumerate(testCaseInfo.getParameters().keySet()))
- {
- context.getEventListener().onEvent(new StartTestEvent(testId,
testCaseInfo));
-
//
- StartTestCommand command = new StartTestCommand(parametrization);
+ context.getEventListener().onEvent(new StartTestSuiteEvent(currentId,
testSuiteInfo));
//
- TestResult result = null;
+ for (String name : testSuiteInfo.getNames())
+ {
+ TestInfo childInfo = testSuiteInfo.getTest(name);
+ //
+ TestId childId = new TestId(currentId, name);
+
+ //
+ internalRun(context, childInfo, childId, childId);
+ }
+
//
- long duration = -System.currentTimeMillis();
+ context.getEventListener().onEvent(new EndTestSuiteEvent(testId));
+ }
+ else
+ {
+ TestCaseInfo testCaseInfo = (TestCaseInfo)currentInfo;
//
- DriverResponse response = null;
- try
+ for (Map<String,String> parametrization :
context.getParametrizations().enumerate(testCaseInfo.getParameters().keySet()))
{
+ context.getEventListener().onEvent(new StartTestEvent(currentId,
testCaseInfo));
+
+ //
+ StartTestCommand command = new StartTestCommand(parametrization);
+
+ //
+ TestResult result = null;
+
+ //
+ long duration = -System.currentTimeMillis();
+
+ //
+ DriverResponse response = null;
try
{
- response = driver.invoke(testId, command);
+ try
+ {
+ response = driver.invoke(currentId, command);
+ }
+ finally
+ {
+ duration += System.currentTimeMillis();
+ }
}
- finally
+ catch (Exception e)
{
- duration += System.currentTimeMillis();
+ Failure failure = new Failure("The test driver threw an
unexpected exception ", e, FailureType.ERROR);
+ result = new TestFailure(failure, parametrization, duration);
}
+
+ //
+ if (result == null)
+ {
+ result = unwrap(response, parametrization, duration);
+ }
+
+ //
+ context.getEventListener().onEvent(new EndTestEvent(currentId,
result));
}
- catch (Exception e)
- {
- Failure failure = new Failure("The test driver threw an unexpected
exception ", e, FailureType.ERROR);
- result = new TestFailure(failure, parametrization, duration);
- }
+ }
+// }
+ }
+ else
+ {
+ String name = targetId.getName(currentId.getLength());
+ //
+ if (currentInfo instanceof TestSuiteInfo)
+ {
+ //
+ TestSuiteInfo currentSuiteInfo = (TestSuiteInfo)currentInfo;
+
+ //
+ TestInfo nextInfo = currentSuiteInfo.getTest(name);
+
+ //
+ if (nextInfo != null)
+ {
+ TestId nextId = new TestId(currentId, name);
+
//
- if (result == null)
- {
- result = unwrap(response, parametrization, duration);
- }
+ context.getEventListener().onEvent(new StartTestSuiteEvent(currentId,
currentSuiteInfo));
//
- context.getEventListener().onEvent(new EndTestEvent(testId, result));
+ internalRun(context, nextInfo, targetId, nextId);
+
+ //
+ context.getEventListener().onEvent(new EndTestSuiteEvent(currentId));
}
+ else
+ {
+
+ }
}
+ else
+ {
+
+ }
}
}
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/generic/GenericTestRunner.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/generic/GenericTestRunner.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/generic/GenericTestRunner.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -60,7 +60,7 @@
String className = def.getClassName();
//
- DelegateRunnerEventFilter filter = new DelegateRunnerEventFilter(className,
context.getEventListener());
+ DelegateRunnerEventFilter filter = new
DelegateRunnerEventFilter(context.getEventListener());
//
try
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/pojo/POJOTestRunner.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/pojo/POJOTestRunner.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/impl/pojo/POJOTestRunner.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -65,7 +65,7 @@
String className = testClass.getName();
//
- DelegateRunnerEventFilter filter = new DelegateRunnerEventFilter(className,
context.getEventListener());
+ DelegateRunnerEventFilter filter = new
DelegateRunnerEventFilter(context.getEventListener());
//
try
Modified: modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/ModelBuilder.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/ModelBuilder.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/ModelBuilder.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -171,16 +171,9 @@
}
//
- Attr nameAttr = suiteElt.getAttributeNode("name");
- if (nameAttr == null)
- {
- throw new IllegalArgumentException();
- }
+ GenericTestSuiteDef suite = new
GenericTestSuiteDef(nameAttrOfClassElt.getValue());
//
- GenericTestSuiteDef suite = new GenericTestSuiteDef(nameAttr.getValue(),
nameAttrOfClassElt.getValue());
-
- //
for (Element testElt : children(suiteElt, "test"))
{
Attr refidAttr = testElt.getAttributeNode("refid");
Modified:
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/generic/GenericTestSuiteDef.java
===================================================================
---
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/generic/GenericTestSuiteDef.java 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/main/org/jboss/unit/runner/model/generic/GenericTestSuiteDef.java 2007-10-15
20:06:37 UTC (rev 8661)
@@ -41,22 +41,13 @@
private final List<TestDef> tests = new ArrayList<TestDef>();
/** . */
- private final String name;
-
- /** . */
private final String className;
- public GenericTestSuiteDef(String name, String className)
+ public GenericTestSuiteDef(String className)
{
- this.name = name;
this.className = className;
}
- public String getName()
- {
- return name;
- }
-
public String getClassName()
{
return className;
Modified:
modules/test/trunk/unit/src/resources/jboss-unit-jar/org/jboss/unit/runner/model/jboss-unit_1_0.xsd
===================================================================
---
modules/test/trunk/unit/src/resources/jboss-unit-jar/org/jboss/unit/runner/model/jboss-unit_1_0.xsd 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/resources/jboss-unit-jar/org/jboss/unit/runner/model/jboss-unit_1_0.xsd 2007-10-15
20:06:37 UTC (rev 8661)
@@ -79,7 +79,6 @@
<xsd:element name="parameter" type="parameterType"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="test" type="generic_testType"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
- <xsd:attribute name="name" type="xsd:string"
use="required"/>
</xsd:complexType>
<xsd:complexType name="generic_testType">
Modified:
modules/test/trunk/unit/src/resources/test/org/jboss/test/unit/runner/model/f2.xml
===================================================================
---
modules/test/trunk/unit/src/resources/test/org/jboss/test/unit/runner/model/f2.xml 2007-10-15
19:28:21 UTC (rev 8660)
+++
modules/test/trunk/unit/src/resources/test/org/jboss/test/unit/runner/model/f2.xml 2007-10-15
20:06:37 UTC (rev 8661)
@@ -3,7 +3,7 @@
xmlns="urn:jboss:jboss-unit:1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:jboss:jboss-unit:1.0 jboss-unit_1_0.xsd">
- <generic name="foo_generic">
+ <generic>
<class name="foo_generic"/>
<parameter name="red" value="blue"/>
<test refid="foo"/>