Author: hadrian Date: Wed Jul 7 06:26:20 2010 New Revision: 961249 URL: http://svn.apache.org/viewvc?rev=961249&view=rev Log: CAMEL-2916. Support for platform specific execution
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/TestSupport.java camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationCustomMBeanTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableOnCamelContextTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationUsingDefaultsTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationWithConnectorTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceCountTest.java camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceTest.java camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/tuning/PerformanceRoutePojoTest.java camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/TestSupport.java Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/TestSupport.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/TestSupport.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/TestSupport.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/TestSupport.java Wed Jul 7 06:26:20 2010 @@ -22,12 +22,12 @@ import java.util.List; import java.util.Locale; import junit.framework.TestCase; + import org.apache.camel.builder.Builder; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.builder.ValueBuilder; import org.apache.camel.impl.DefaultCamelContext; import org.apache.camel.impl.DefaultExchange; -import org.apache.camel.management.JmxSystemPropertyKeys; import org.apache.camel.processor.DelegateAsyncProcessor; import org.apache.camel.processor.DelegateProcessor; import org.apache.camel.processor.ErrorHandlerSupport; @@ -50,15 +50,21 @@ public abstract class TestSupport extend // ------------------------------------------------------------------------- /** - * Runs the bare test sequence. + * Runs the bare test sequence only if this platform is supported * @exception Throwable if any exception is thrown */ @Override public void runBare() throws Throwable { - //start with a clean slate - DefaultCamelContext.setContextCounter(0); - TestSupportNodeIdFactory.resetCounters(); - super.runBare(); + if (canRunOnThisPlatform()) { + //start with a clean slate + DefaultCamelContext.setContextCounter(0); + TestSupportNodeIdFactory.resetCounters(); + super.runBare(); + } + } + + protected boolean canRunOnThisPlatform() { + return true; } /** Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationCustomMBeanTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationCustomMBeanTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationCustomMBeanTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationCustomMBeanTest.java Wed Jul 7 06:26:20 2010 @@ -51,10 +51,6 @@ public class JmxInstrumentationCustomMBe } public void testCustomEndpoint() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); @@ -79,10 +75,6 @@ public class JmxInstrumentationCustomMBe @SuppressWarnings("unchecked") public void testManagedEndpoint() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); @@ -96,10 +88,6 @@ public class JmxInstrumentationCustomMBe } public void testCounters() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - CustomEndpoint resultEndpoint = resolveMandatoryEndpoint("custom:end", CustomEndpoint.class); resultEndpoint.expectedBodiesReceived("<hello>world!</hello>"); sendBody("direct:start", "<hello>world!</hello>"); @@ -110,10 +98,6 @@ public class JmxInstrumentationCustomMBe } public void testMBeansRegistered() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableOnCamelContextTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableOnCamelContextTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableOnCamelContextTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableOnCamelContextTest.java Wed Jul 7 06:26:20 2010 @@ -44,10 +44,6 @@ public class JmxInstrumentationDisableOn @Override public void testMBeansRegistered() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationDisableTest.java Wed Jul 7 06:26:20 2010 @@ -37,10 +37,6 @@ public class JmxInstrumentationDisableTe @Override public void testMBeansRegistered() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationUsingDefaultsTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationUsingDefaultsTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationUsingDefaultsTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationUsingDefaultsTest.java Wed Jul 7 06:26:20 2010 @@ -47,15 +47,7 @@ public class JmxInstrumentationUsingDefa return true; } - protected boolean canRunOnThisPlatform() { - return true; - } - public void testMBeansRegistered() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - if (System.getProperty(JmxSystemPropertyKeys.USE_PLATFORM_MBS) != null && !Boolean.getBoolean(JmxSystemPropertyKeys.USE_PLATFORM_MBS)) { assertEquals(domainName, mbsc.getDefaultDomain()); @@ -85,10 +77,6 @@ public class JmxInstrumentationUsingDefa } public void testCounters() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - MockEndpoint resultEndpoint = resolveMandatoryEndpoint("mock:end", MockEndpoint.class); resultEndpoint.expectedBodiesReceived("<hello>world!</hello>"); sendBody("direct:start", "<hello>world!</hello>"); @@ -173,10 +161,6 @@ public class JmxInstrumentationUsingDefa @Override protected void tearDown() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - releaseMBeanServers(); mbsc = null; super.tearDown(); @@ -194,10 +178,6 @@ public class JmxInstrumentationUsingDefa @Override protected void setUp() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - releaseMBeanServers(); super.setUp(); Thread.sleep(sleepForConnection); Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationWithConnectorTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationWithConnectorTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationWithConnectorTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/JmxInstrumentationWithConnectorTest.java Wed Jul 7 06:26:20 2010 @@ -37,6 +37,7 @@ public class JmxInstrumentationWithConne return true; } + @Override protected boolean canRunOnThisPlatform() { String os = System.getProperty("os.name"); // Does not work on AIX and the problem is hard to identify, could be issues not allowing to use a custom port Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceCountTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceCountTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceCountTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceCountTest.java Wed Jul 7 06:26:20 2010 @@ -33,10 +33,6 @@ public class RoutePerformanceCountTest e private String url = "direct:start"; public void testSendMessages() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - long start = System.currentTimeMillis(); for (int i = 0; i < size; i++) { @@ -48,7 +44,8 @@ public class RoutePerformanceCountTest e System.out.println("RoutePerformanceCountTest: Sent: " + size + " Took: " + delta + " ms"); } - private boolean canRunOnThisPlatform() { + @Override + protected boolean canRunOnThisPlatform() { String os = System.getProperty("os.name"); // HP-UX is just to slow to run this test return !os.toLowerCase().contains("hp-ux"); @@ -71,7 +68,6 @@ public class RoutePerformanceCountTest e } private class CountProcessor implements Processor { - private AtomicInteger counter = new AtomicInteger(0); public void process(Exchange exchange) throws Exception { @@ -81,7 +77,5 @@ public class RoutePerformanceCountTest e public int getCounter() { return counter.intValue(); } - } - } Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceTest.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceTest.java (original) +++ camel/trunk/camel-core/src/test/java/org/apache/camel/processor/RoutePerformanceTest.java Wed Jul 7 06:26:20 2010 @@ -36,10 +36,6 @@ public class RoutePerformanceTest extend private String uri = "mock:results"; public void testPerformance() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - long start = System.currentTimeMillis(); MockEndpoint endpoint = getMockEndpoint(uri); @@ -55,7 +51,8 @@ public class RoutePerformanceTest extend System.out.println("RoutePerformanceTest: Sent: " + size + " Took: " + delta + " ms"); } - private boolean canRunOnThisPlatform() { + @Override + protected boolean canRunOnThisPlatform() { String os = System.getProperty("os.name"); // HP-UX is just to slow to run this test return !os.toLowerCase().contains("hp-ux"); Modified: camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/tuning/PerformanceRoutePojoTest.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/tuning/PerformanceRoutePojoTest.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/tuning/PerformanceRoutePojoTest.java (original) +++ camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/tuning/PerformanceRoutePojoTest.java Wed Jul 7 06:26:20 2010 @@ -36,10 +36,6 @@ public class PerformanceRoutePojoTest ex @Test public void testPojoPerformance() throws Exception { - if (!canRunOnThisPlatform()) { - return; - } - long start = System.currentTimeMillis(); getMockEndpoint("mock:audit").expectedMessageCount(size); @@ -66,10 +62,10 @@ public class PerformanceRoutePojoTest ex System.out.println("RoutePerformancePojoTest: Sent: " + size + " Took: " + delta + " ms"); } - private boolean canRunOnThisPlatform() { + @Override + protected boolean canRunOnThisPlatform() { String os = System.getProperty("os.name"); // HP-UX is just to slow to run this test return !os.toLowerCase().contains("hp-ux"); } - } Modified: camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/TestSupport.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/TestSupport.java?rev=961249&r1=961248&r2=961249&view=diff ============================================================================== --- camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/TestSupport.java (original) +++ camel/trunk/components/camel-test/src/main/java/org/apache/camel/test/TestSupport.java Wed Jul 7 06:26:20 2010 @@ -32,6 +32,7 @@ import org.apache.camel.Message; import org.apache.camel.Predicate; import org.apache.camel.Processor; import org.apache.camel.Route; +import org.apache.camel.TestSupportNodeIdFactory; import org.apache.camel.builder.Builder; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.builder.ValueBuilder; @@ -52,6 +53,24 @@ public abstract class TestSupport extend private static final Log LOG = LogFactory.getLog(TestSupport.class); protected transient Log log = LogFactory.getLog(getClass()); + /** + * Runs the bare test sequence only if this platform is supported + * @exception Throwable if any exception is thrown + */ + @Override + public void runBare() throws Throwable { + if (canRunOnThisPlatform()) { + //start with a clean slate + DefaultCamelContext.setContextCounter(0); + TestSupportNodeIdFactory.resetCounters(); + super.runBare(); + } + } + + protected boolean canRunOnThisPlatform() { + return true; + } + // Builder methods for expressions used when testing // -------------------------------------------------------------------------