[jboss-cvs] JBossAS SVN: r90899 - in projects/kernel/trunk/kernel/src/test: resources and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jul 7 14:38:30 EDT 2009
Author: kabir.khan at jboss.com
Date: 2009-07-07 14:38:30 -0400 (Tue, 07 Jul 2009)
New Revision: 90899
Added:
projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.java
projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.txt
projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase_NotAutomatic.xml
Modified:
projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousTest.java
projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/TwoParallelDeploymentsTestCase.java
projects/kernel/trunk/kernel/src/test/resources/build.xml
Log:
[JBKERNEL-25] Test mode='Asynchronous' at deployment level
Added: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.java (rev 0)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.java 2009-07-07 18:38:30 UTC (rev 90899)
@@ -0,0 +1,74 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file 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.test.kernel.asynchronous.test;
+
+import java.util.List;
+
+import org.jboss.test.kernel.asynchronous.support.Helper;
+import org.jboss.test.kernel.asynchronous.support.Point;
+
+/**
+ * Using byteman to verify that several asynchronous contexts can be in the same lifecycle
+ * at the same time
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AsynchronousAtDeploymentLevelTestCase extends AsynchronousTest
+{
+ public AsynchronousAtDeploymentLevelTestCase(String name)
+ {
+ super(name, 2);
+ }
+
+ public void testTwoParallelDeployments() throws Exception
+ {
+ deploy("TwoParallelDeploymentsTestCase_NotAutomatic.xml");
+ try
+ {
+ assertNotNull(getBean("Bean1"));
+ assertNotNull(getBean("Bean2"));
+
+ List<Point> points = Helper.getPoints();
+ assertEquals(points.toString(), 14, points.size());
+
+ assertPoints("PreInstallAction", 0, 1);
+ assertPoints("DescribeAction", 2, 3);
+ assertPoints("InstantiateAction", 4, 5);
+ assertPoints("ConfigureAction", 6, 7);
+ assertPoints("create", 8, 9);
+ assertPoints("start", 10, 11);
+ assertPoints("InstallAction", 12, 13);
+ }
+ finally
+ {
+ undeploy("TwoParallelDeploymentsTestCase_NotAutomatic.xml");
+ }
+ }
+
+ private void assertPoints(String name, int index1, int index2)
+ {
+ Point point1 = checkPoint(index1, name, false);
+ Point point2 = checkPoint(index2, name, false);
+ assertFalse(point1.getThreadName().equals(point2.getThreadName()));
+ }
+}
Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousTest.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousTest.java 2009-07-07 17:37:25 UTC (rev 90898)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/AsynchronousTest.java 2009-07-07 18:38:30 UTC (rev 90899)
@@ -73,7 +73,7 @@
return point;
}
- protected void checkPoint(int index, String name, Boolean mainThread)
+ protected Point checkPoint(int index, String name, Boolean mainThread)
{
Point point = assertGetPoint(index);
assertEquals(name, point.getName());
@@ -89,6 +89,7 @@
assertFalse(mainThreadName.equals(point.getThreadName()));
}
}
+ return point;
}
protected AsynchronousTestDelegate getAsynchronousDelegate()
Modified: projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/TwoParallelDeploymentsTestCase.java
===================================================================
--- projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/TwoParallelDeploymentsTestCase.java 2009-07-07 17:37:25 UTC (rev 90898)
+++ projects/kernel/trunk/kernel/src/test/java/org/jboss/test/kernel/asynchronous/test/TwoParallelDeploymentsTestCase.java 2009-07-07 18:38:30 UTC (rev 90899)
@@ -67,12 +67,8 @@
private void assertPoints(String name, int index1, int index2)
{
- Point point1 = assertGetPoint(index1);
- Point point2 = assertGetPoint(index2);
- assertEquals(name, point1.getName());
- assertEquals(name, point2.getName());
- assertNotNull(point1.getThreadName());
- assertNotNull(point1.getThreadName());
+ Point point1 = checkPoint(index1, name, false);
+ Point point2 = checkPoint(index2, name, false);
assertFalse(point1.getThreadName().equals(point2.getThreadName()));
}
}
Modified: projects/kernel/trunk/kernel/src/test/resources/build.xml
===================================================================
--- projects/kernel/trunk/kernel/src/test/resources/build.xml 2009-07-07 17:37:25 UTC (rev 90898)
+++ projects/kernel/trunk/kernel/src/test/resources/build.xml 2009-07-07 18:38:30 UTC (rev 90899)
@@ -24,6 +24,9 @@
<antcall target="run-asynchronous-test" inheritrefs="true">
<param name="test" value="AsynchronousContextWithDependencyOnOnDemandTestCase"/>
</antcall>
+ <antcall target="run-asynchronous-test" inheritrefs="true">
+ <param name="test" value="AsynchronousAtDeploymentLevelTestCase"/>
+ </antcall>
</target>
<target name="run-asynchronous-test">
Added: projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.txt
===================================================================
--- projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.txt (rev 0)
+++ projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase.txt 2009-07-07 18:38:30 UTC (rev 90899)
@@ -0,0 +1,131 @@
+RULE Rendezvous on first thread execution
+CLASS org.jboss.dependency.plugins.AbstractController$InstallControllerContextTask
+METHOD run
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("Run", 2),
+ debug("rendezvous in AbstractController$InstallControllerContextTask"),
+ rendezvous("Run"),
+ debug("go!!!")
+ENDRULE
+
+RULE Wait for Complete following deploy on main thread
+CLASS org.jboss.test.kernel.junit.MicrocontainerTestDelegate
+METHOD deploy(java.net.URL)
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+AT EXIT
+BIND NOTHING
+IF TRUE
+DO debug("wait in deploy"),
+ waitFor("Complete", 10000),
+ debug("go!!!")
+ENDRULE
+
+RULE Signal wake Complete following complete deploy in thread
+CLASS org.jboss.dependency.plugins.AbstractController$InstallControllerContextTask
+METHOD run
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+AT EXIT
+BIND NOTHING
+IF TRUE
+DO createRendezvous("End", 2),
+ debug("End rendezvous in AbstractController$InstallControllerContextTask"),
+ rendezvous("End"),
+ debug("signalling wake in AbstractController$InstallControllerContextTask"),
+ signalWake("Complete"),
+ debug("signalled!")
+ENDRULE
+
+RULE Rendezvous in PreInstallAction
+CLASS org.jboss.kernel.plugins.dependency.PreInstallAction
+METHOD installActionInternal
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("PreInstallAction", 2),
+ debug("rendezvous in PreInstallAction.installActionInternal"),
+ rendezvous("PreInstallAction"),
+ addPoint("PreInstallAction"),
+ debug("go!!!")
+ENDRULE
+
+RULE Rendezvous in DescribeAction
+CLASS org.jboss.kernel.plugins.dependency.DescribeAction
+METHOD installActionInternal
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("DescribeAction", 2),
+ debug("rendezvous in DescribeAction.installActionInternal"),
+ rendezvous("DescribeAction"),
+ addPoint("DescribeAction"),
+ debug("go!!!")
+ENDRULE
+
+RULE Rendezvous in InstantiateAction
+CLASS org.jboss.kernel.plugins.dependency.InstantiateAction
+METHOD installActionInternal
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("InstantiateAction", 2),
+ debug("rendezvous in InstantiateAction.installActionInternal"),
+ rendezvous("InstantiateAction"),
+ addPoint("InstantiateAction"),
+ debug("go!!!")
+ENDRULE
+
+RULE Rendezvous in ConfigureAction
+CLASS org.jboss.kernel.plugins.dependency.ConfigureAction
+METHOD installActionInternal
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("ConfigureAction", 2),
+ debug("rendezvous in ConfigureAction.installActionInternal"),
+ rendezvous("ConfigureAction"),
+ addPoint("ConfigureAction"),
+ debug("go!!!")
+ENDRULE
+
+#We don't do this in the Action class since there is no point invoked once on install
+RULE Rendezvous in create
+CLASS org.jboss.test.kernel.asynchronous.support.BeanWithCreateStart
+METHOD create
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("create", 2),
+ debug("rendezvous in BeanWithCreateStart.create"),
+ rendezvous("create"),
+ addPoint("create"),
+ debug("go!!!")
+ENDRULE
+
+#We don't do this in the Action class since there is no point invoked once on install
+RULE Rendezvous in StartStopLifecycleAction
+CLASS org.jboss.test.kernel.asynchronous.support.BeanWithCreateStart
+METHOD start
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("start", 2),
+ debug("rendezvous in BeanWithCreateStart.start"),
+ rendezvous("start"),
+ addPoint("start"),
+ debug("go!!!")
+ENDRULE
+
+RULE Rendezvous in InstallAction
+CLASS org.jboss.kernel.plugins.dependency.InstallAction
+METHOD installActionInternal
+HELPER org.jboss.test.kernel.asynchronous.support.Helper
+BIND NOTHING
+IF TRUE
+DO createRendezvous("InstallAction", 2),
+ debug("rendezvous in InstallAction.installActionInternal"),
+ rendezvous("InstallAction"),
+ addPoint("InstallAction"),
+ debug("go!!!")
+ENDRULE
Added: projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase_NotAutomatic.xml
===================================================================
--- projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase_NotAutomatic.xml (rev 0)
+++ projects/kernel/trunk/kernel/src/test/resources/org/jboss/test/kernel/asynchronous/test/AsynchronousAtDeploymentLevelTestCase_NotAutomatic.xml 2009-07-07 18:38:30 UTC (rev 90899)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="urn:jboss:bean-deployer bean-deployer_1_0.xsd"
+ xmlns="urn:jboss:bean-deployer"
+ mode="Asynchronous">
+ <bean name="Bean1" class="org.jboss.test.kernel.asynchronous.support.BeanWithCreateStart"/>
+ <bean name="Bean2" class="org.jboss.test.kernel.asynchronous.support.BeanWithCreateStart"/>
+</deployment>
More information about the jboss-cvs-commits
mailing list