You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2016/05/22 07:33:45 UTC
[1/2] camel git commit: CAMEL-9981: camel-test-spring may register
listener twice.
Repository: camel
Updated Branches:
refs/heads/camel-2.17.x c4ef2572c -> 552d78acc
refs/heads/master 9863e83d7 -> 39a82b181
CAMEL-9981: camel-test-spring may register listener twice.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/39a82b18
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/39a82b18
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/39a82b18
Branch: refs/heads/master
Commit: 39a82b181dc75ba9bb21ccd32da7a22e3eb34734
Parents: 9863e83
Author: Claus Ibsen <da...@apache.org>
Authored: Sun May 22 09:22:54 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun May 22 09:22:54 2016 +0200
----------------------------------------------------------------------
.../test/spring/CamelSpringBootRunner.java | 31 +++++++++++++++++---
.../camel/test/spring/CamelSpringRunner.java | 22 ++++++++++++--
2 files changed, 46 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/39a82b18/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootRunner.java
----------------------------------------------------------------------
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootRunner.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootRunner.java
index 34e3a05..e8f8620 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootRunner.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootRunner.java
@@ -16,8 +16,12 @@
*/
package org.apache.camel.test.spring;
+import java.util.List;
+
import org.junit.runners.model.InitializationError;
+import org.springframework.core.OrderComparator;
import org.springframework.test.context.TestContextManager;
+import org.springframework.test.context.TestExecutionListener;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
@@ -56,10 +60,29 @@ public class CamelSpringBootRunner extends SpringJUnit4ClassRunner {
System.setProperty("skipStartingCamelContext", "true");
// inject Camel first, and then disable jmx and add the stop-watch
- registerTestExecutionListeners(new CamelSpringTestContextLoaderTestExecutionListener());
- registerTestExecutionListeners(new DisableJmxTestExecutionListener());
- registerTestExecutionListeners(new CamelSpringBootExecutionListener());
- registerTestExecutionListeners(new StopWatchTestExecutionListener());
+ // (ensure to get the current list as we need to re-order that list so Camel comes first)
+ List<TestExecutionListener> list = getTestExecutionListeners();
+ addIfMissingType(list, new CamelSpringTestContextLoaderTestExecutionListener());
+ addIfMissingType(list, new DisableJmxTestExecutionListener());
+ addIfMissingType(list, new CamelSpringBootExecutionListener());
+ addIfMissingType(list, new StopWatchTestExecutionListener());
+ OrderComparator.sort(list);
+ registerTestExecutionListeners(list);
+ }
+
+ private void addIfMissingType(List<TestExecutionListener> list, TestExecutionListener listener) {
+ String type = listener.getClass().getName();
+ boolean found = false;
+ for (TestExecutionListener current : list) {
+ if (type.equals(current.getClass().getName())) {
+ found = true;
+ break;
+ }
+ }
+
+ if (!found) {
+ list.add(listener);
+ }
}
}
http://git-wip-us.apache.org/repos/asf/camel/blob/39a82b18/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringRunner.java
----------------------------------------------------------------------
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringRunner.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringRunner.java
index b689337..4cd9935 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringRunner.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringRunner.java
@@ -57,14 +57,30 @@ public class CamelSpringRunner extends SpringJUnit4ClassRunner {
super(testClass);
// inject Camel first, and then disable jmx and add the stop-watch
+ // (ensure to get the current list as we need to re-order that list so Camel comes first)
List<TestExecutionListener> list = getTestExecutionListeners();
- list.add(new CamelSpringTestContextLoaderTestExecutionListener());
- list.add(new DisableJmxTestExecutionListener());
- list.add(new StopWatchTestExecutionListener());
+ addIfMissingType(list, new CamelSpringTestContextLoaderTestExecutionListener());
+ addIfMissingType(list, new DisableJmxTestExecutionListener());
+ addIfMissingType(list, new StopWatchTestExecutionListener());
OrderComparator.sort(list);
registerTestExecutionListeners(list);
}
+ private void addIfMissingType(List<TestExecutionListener> list, TestExecutionListener listener) {
+ String type = listener.getClass().getName();
+ boolean found = false;
+ for (TestExecutionListener current : list) {
+ if (type.equals(current.getClass().getName())) {
+ found = true;
+ break;
+ }
+ }
+
+ if (!found) {
+ list.add(listener);
+ }
+ }
+
}
}
[2/2] camel git commit: CAMEL-9981: camel-test-spring may register
listener twice.
Posted by da...@apache.org.
CAMEL-9981: camel-test-spring may register listener twice.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/552d78ac
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/552d78ac
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/552d78ac
Branch: refs/heads/camel-2.17.x
Commit: 552d78acca48dc24f4ce3e2ebb6c1e8de930227e
Parents: c4ef257
Author: Claus Ibsen <da...@apache.org>
Authored: Sun May 22 09:25:38 2016 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun May 22 09:25:38 2016 +0200
----------------------------------------------------------------------
.../CamelSpringBootJUnit4ClassRunner.java | 30 +++++++++++++++++---
.../spring/CamelSpringJUnit4ClassRunner.java | 21 ++++++++++++--
2 files changed, 44 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/552d78ac/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootJUnit4ClassRunner.java
----------------------------------------------------------------------
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootJUnit4ClassRunner.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootJUnit4ClassRunner.java
index fa0c0b5..0820d56 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootJUnit4ClassRunner.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringBootJUnit4ClassRunner.java
@@ -16,8 +16,12 @@
*/
package org.apache.camel.test.spring;
+import java.util.List;
+
import org.junit.runners.model.InitializationError;
+import org.springframework.core.OrderComparator;
import org.springframework.test.context.TestContextManager;
+import org.springframework.test.context.TestExecutionListener;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
@@ -56,12 +60,30 @@ public class CamelSpringBootJUnit4ClassRunner extends SpringJUnit4ClassRunner {
System.setProperty("skipStartingCamelContext", "true");
// inject Camel first, and then disable jmx and add the stop-watch
- registerTestExecutionListeners(new CamelSpringTestContextLoaderTestExecutionListener());
- registerTestExecutionListeners(new DisableJmxTestExecutionListener());
- registerTestExecutionListeners(new CamelSpringBootExecutionListener());
- registerTestExecutionListeners(new StopWatchTestExecutionListener());
+ // (ensure to get the current list as we need to re-order that list so Camel comes first)
+ List<TestExecutionListener> list = getTestExecutionListeners();
+ addIfMissingType(list, new CamelSpringTestContextLoaderTestExecutionListener());
+ addIfMissingType(list, new DisableJmxTestExecutionListener());
+ addIfMissingType(list, new CamelSpringBootExecutionListener());
+ addIfMissingType(list, new StopWatchTestExecutionListener());
+ OrderComparator.sort(list);
+ registerTestExecutionListeners(list);
}
+ private void addIfMissingType(List<TestExecutionListener> list, TestExecutionListener listener) {
+ String type = listener.getClass().getName();
+ boolean found = false;
+ for (TestExecutionListener current : list) {
+ if (type.equals(current.getClass().getName())) {
+ found = true;
+ break;
+ }
+ }
+
+ if (!found) {
+ list.add(listener);
+ }
+ }
}
}
http://git-wip-us.apache.org/repos/asf/camel/blob/552d78ac/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringJUnit4ClassRunner.java
----------------------------------------------------------------------
diff --git a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringJUnit4ClassRunner.java b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringJUnit4ClassRunner.java
index 64d1721..25bc36b 100644
--- a/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringJUnit4ClassRunner.java
+++ b/components/camel-test-spring/src/main/java/org/apache/camel/test/spring/CamelSpringJUnit4ClassRunner.java
@@ -57,14 +57,29 @@ public class CamelSpringJUnit4ClassRunner extends SpringJUnit4ClassRunner {
super(testClass);
// inject Camel first, and then disable jmx and add the stop-watch
+ // (ensure to get the current list as we need to re-order that list so Camel comes first)
List<TestExecutionListener> list = getTestExecutionListeners();
- list.add(new CamelSpringTestContextLoaderTestExecutionListener());
- list.add(new DisableJmxTestExecutionListener());
- list.add(new StopWatchTestExecutionListener());
+ addIfMissingType(list, new CamelSpringTestContextLoaderTestExecutionListener());
+ addIfMissingType(list, new DisableJmxTestExecutionListener());
+ addIfMissingType(list, new StopWatchTestExecutionListener());
OrderComparator.sort(list);
registerTestExecutionListeners(list);
}
+ private void addIfMissingType(List<TestExecutionListener> list, TestExecutionListener listener) {
+ String type = listener.getClass().getName();
+ boolean found = false;
+ for (TestExecutionListener current : list) {
+ if (type.equals(current.getClass().getName())) {
+ found = true;
+ break;
+ }
+ }
+
+ if (!found) {
+ list.add(listener);
+ }
+ }
}
}