You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2009/10/21 20:16:18 UTC
svn commit: r828125 - in /camel/trunk:
camel-core/src/main/java/org/apache/camel/component/mock/
camel-core/src/test/java/org/apache/camel/builder/
camel-core/src/test/java/org/apache/camel/component/file/
camel-core/src/test/java/org/apache/camel/comp...
Author: janstey
Date: Wed Oct 21 18:16:18 2009
New Revision: 828125
URL: http://svn.apache.org/viewvc?rev=828125&view=rev
Log:
MR-272 - Fixes to several issues... a compilation issue with ibm jdk, some test issues for slower machines,
and a general problem with MockEndpoint.assertIsNotSatisfied().
Thanks to Peter Jones for providing a patch for this!
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ValueBuilderTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumeSingleDirectoryOnlyTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/component/mock/MockEndpointTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/component/timer/TimerWithTimeOptionTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedThrottlerTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedTimerTest.java
camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ConvertBodyTest.java
camel/trunk/components/camel-atom/src/test/java/org/apache/camel/component/atom/AtomEntrySortTest.java
camel/trunk/components/camel-rss/src/test/java/org/apache/camel/component/rss/RssEntrySortTest.java
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java Wed Oct 21 18:16:18 2009
@@ -253,12 +253,18 @@
* Validates that the assertions fail on this endpoint
*/
public void assertIsNotSatisfied() throws InterruptedException {
+ boolean failed = false;
try {
assertIsSatisfied();
- fail("Expected assertion failure!");
+ // did not throw expected error... fail!
+ failed = true;
} catch (AssertionError e) {
LOG.info("Caught expected failure: " + e);
}
+ if (failed) {
+ // fail() throws the AssertionError to indicate the test failed.
+ fail("Expected assertion failure but test succeeded!");
+ }
}
/**
@@ -268,12 +274,18 @@
* should wait for the test to be true
*/
public void assertIsNotSatisfied(long timeoutForEmptyEndpoints) throws InterruptedException {
+ boolean failed = false;
try {
assertIsSatisfied(timeoutForEmptyEndpoints);
- fail("Expected assertion failure!");
+ // did not throw expected error... fail!
+ failed = true;
} catch (AssertionError e) {
LOG.info("Caught expected failure: " + e);
}
+ if (failed) {
+ // fail() throws the AssertionError to indicate the test failed.
+ fail("Expected assertion failure but test succeeded!");
+ }
}
/**
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ValueBuilderTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ValueBuilderTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ValueBuilderTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/builder/ValueBuilderTest.java Wed Oct 21 18:16:18 2009
@@ -88,6 +88,13 @@
// send in a false test
mock.reset();
+ mock.message(0).body().matches(new Expression() {
+ public <T> T evaluate(Exchange exchange, Class<T> type) {
+ String body = exchange.getIn().getBody(String.class);
+ Boolean answer = body.contains("Camel");
+ return type.cast(answer);
+ }
+ });
template.sendBody("direct:start", "Hello World");
mock.assertIsNotSatisfied();
}
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumeSingleDirectoryOnlyTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumeSingleDirectoryOnlyTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumeSingleDirectoryOnlyTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/FileConsumeSingleDirectoryOnlyTest.java Wed Oct 21 18:16:18 2009
@@ -37,6 +37,9 @@
public void testConsumeFileOnly() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:result");
+ // Default wait time of 10 sec is not quite long enough on slow
+ // machines.
+ mock.setResultWaitTime(15000L);
mock.expectedBodiesReceivedInAnyOrder("Hello World", "Bye World");
assertMockEndpointsSatisfied();
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/component/mock/MockEndpointTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/mock/MockEndpointTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/mock/MockEndpointTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/mock/MockEndpointTest.java Wed Oct 21 18:16:18 2009
@@ -109,7 +109,7 @@
MockEndpoint resultEndpoint = getMockEndpoint("mock:result");
resultEndpoint.expectedMessageCount(5);
- resultEndpoint.assertIsNotSatisfied();
+ resultEndpoint.assertIsSatisfied();
}
public void testExpectationsAfterMessagesArriveFail() throws Exception {
@@ -176,8 +176,6 @@
resultEndpoint.expectedHeaderReceived("number", 123);
sendHeader("number", 123);
resultEndpoint.assertIsSatisfied();
-
- resultEndpoint.assertIsNotSatisfied();
}
public void testExpressionExpectationOfHeader() throws InterruptedException {
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/component/timer/TimerWithTimeOptionTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/component/timer/TimerWithTimeOptionTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/component/timer/TimerWithTimeOptionTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/component/timer/TimerWithTimeOptionTest.java Wed Oct 21 18:16:18 2009
@@ -75,7 +75,7 @@
assertMockEndpointsSatisfied();
}
- public void testFiredInFutureWithTPatternFixedReat() throws Exception {
+ public void testFiredInFutureWithTPatternFixedRate() throws Exception {
context.addRoutes(new RouteBuilder() {
@Override
public void configure() throws Exception {
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedThrottlerTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedThrottlerTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedThrottlerTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedThrottlerTest.java Wed Oct 21 18:16:18 2009
@@ -42,7 +42,11 @@
public void testManageThrottler() throws Exception {
getMockEndpoint("mock:result").expectedMessageCount(10);
- // send in 10 messages
+ // Send in a first batch of 10 messages and check that the endpoint
+ // gets them. We'll check the total time of the second and third
+ // batches as it seems that there is some time required to prime
+ // things, which can vary significantly... particularly on slower
+ // machines.
for (int i = 0; i < 10; i++) {
template.sendBody("direct:start", "Message " + i);
}
@@ -57,16 +61,24 @@
// use route to get the total time
ObjectName routeName = ObjectName.getInstance("org.apache.camel:context=localhost/camel-1,type=routes,name=\"route1\"");
+
+ // reset the counters
+ mbeanServer.invoke(routeName, "reset", null, null);
+
+ // send in 10 messages
+ for (int i = 0; i < 10; i++) {
+ template.sendBody("direct:start", "Message " + i);
+ }
+
Long completed = (Long) mbeanServer.getAttribute(routeName, "ExchangesCompleted");
assertEquals(10, completed.longValue());
Long timePeriod = (Long) mbeanServer.getAttribute(throttlerName, "TimePeriodMillis");
assertEquals(1000, timePeriod.longValue());
- Long last = (Long) mbeanServer.getAttribute(routeName, "LastProcessingTime");
Long total = (Long) mbeanServer.getAttribute(routeName, "TotalProcessingTime");
- assertTrue("Should take at most 2.5 sec: was " + total, total < 2500);
+ assertTrue("Should take at most 1.5 sec: was " + total, total < 1500);
// change the throttler using JMX
mbeanServer.setAttribute(throttlerName, new Attribute("MaximumRequestsPerPeriod", (long) 2));
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedTimerTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedTimerTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedTimerTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/management/ManagedTimerTest.java Wed Oct 21 18:16:18 2009
@@ -67,6 +67,12 @@
mbeanServer.invoke(on, "stop", null, null);
mbeanServer.invoke(on, "start", null, null);
+ // Take the time to check the service is started to help avoid
+ // sporadic failure on slower machines.
+ String state = (String) mbeanServer.getAttribute(on, "State");
+ assertEquals("Should be started",
+ org.apache.camel.ServiceStatus.Started.name(), state);
+
// start and we should be done in at most 3 second
mock.expectedMinimumMessageCount(3);
mock.setResultWaitTime(3900);
Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ConvertBodyTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ConvertBodyTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ConvertBodyTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/processor/ConvertBodyTest.java Wed Oct 21 18:16:18 2009
@@ -88,7 +88,7 @@
public void testConvertToStringCharsetFail() throws Exception {
- String body = "Hellö Wörld";
+ String body = "Hell\u00F6 W\u00F6rld";
MockEndpoint result = getMockEndpoint("mock:result");
Modified: camel/trunk/components/camel-atom/src/test/java/org/apache/camel/component/atom/AtomEntrySortTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-atom/src/test/java/org/apache/camel/component/atom/AtomEntrySortTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/components/camel-atom/src/test/java/org/apache/camel/component/atom/AtomEntrySortTest.java (original)
+++ camel/trunk/components/camel-atom/src/test/java/org/apache/camel/component/atom/AtomEntrySortTest.java Wed Oct 21 18:16:18 2009
@@ -39,6 +39,7 @@
MockEndpoint mock = getMockEndpoint("mock:sorted");
mock.expectsAscending(ExpressionBuilder.beanExpression("myBean", "getPubDate"));
mock.expectedMessageCount(10);
+ mock.setResultWaitTime(15000L);
mock.assertIsSatisfied();
}
Modified: camel/trunk/components/camel-rss/src/test/java/org/apache/camel/component/rss/RssEntrySortTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-rss/src/test/java/org/apache/camel/component/rss/RssEntrySortTest.java?rev=828125&r1=828124&r2=828125&view=diff
==============================================================================
--- camel/trunk/components/camel-rss/src/test/java/org/apache/camel/component/rss/RssEntrySortTest.java (original)
+++ camel/trunk/components/camel-rss/src/test/java/org/apache/camel/component/rss/RssEntrySortTest.java Wed Oct 21 18:16:18 2009
@@ -38,6 +38,7 @@
MockEndpoint mock = getMockEndpoint("mock:sorted");
mock.expectsAscending(ExpressionBuilder.beanExpression("myBean", "getPubDate"));
mock.expectedMessageCount(10);
+ mock.setResultWaitTime(15000L);
mock.assertIsSatisfied();
}