You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2016/08/17 09:53:21 UTC
tomee git commit: TOMEE-1907 avoid useless warning for junit
rules/statements
Repository: tomee
Updated Branches:
refs/heads/master 78c5a55c4 -> 4e1fb384e
TOMEE-1907 avoid useless warning for junit rules/statements
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/4e1fb384
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/4e1fb384
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/4e1fb384
Branch: refs/heads/master
Commit: 4e1fb384ec5b41be0247309cbbc7d20e034070c1
Parents: 78c5a55
Author: Romain manni-Bucau <rm...@gmail.com>
Authored: Wed Aug 17 11:53:07 2016 +0200
Committer: Romain manni-Bucau <rm...@gmail.com>
Committed: Wed Aug 17 11:53:07 2016 +0200
----------------------------------------------------------------------
.../common/TomEEInjectionEnricher.java | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/4e1fb384/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEInjectionEnricher.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEInjectionEnricher.java b/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEInjectionEnricher.java
index a85c0f1..c48133e 100644
--- a/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEInjectionEnricher.java
+++ b/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/TomEEInjectionEnricher.java
@@ -45,11 +45,16 @@ public class TomEEInjectionEnricher implements TestEnricher {
if (!SystemInstance.isInitialized()) {
return;
}
- OpenEJBEnricher.enrich(o, getAppContext(o.getClass()));
+ final Class<?> oClass = o.getClass();
+ if (oClass.getName().startsWith("org.junit.rules.")) { // no need of enrichments
+ return;
+ }
+ OpenEJBEnricher.enrich(o, getAppContext(oClass));
}
private AppContext getAppContext(final Class<?> clazz) {
final String clazzName = clazz.getName();
+
final ContainerSystem containerSystem = SystemInstance.get().getComponent(ContainerSystem.class);
if (deployment != null && deployment.get() != null) {
final BeanContext context = containerSystem.getBeanContext(deployment.get().getDescription().getName() + "_" + clazzName);
@@ -71,13 +76,24 @@ public class TomEEInjectionEnricher implements TestEnricher {
}
}
- if (deployment != null && deployment.get() != null && deployment.get().getDescription().testable()) {
+ if (deployment != null && deployment.get() != null && deployment.get().getDescription().testable()
+ && !isJunitComponent(clazz) /*app context will be found by classloader, no need to log anything there*/) {
Logger.getLogger(TomEEInjectionEnricher.class.getName()).log(Level.WARNING, "Failed to find AppContext for: " + clazzName);
}
return null;
}
+ private boolean isJunitComponent(final Class<?> clazz) {
+ final ClassLoader classLoader = clazz.getClassLoader();
+ try {
+ return classLoader.loadClass("org.junit.rules.TestRule").isAssignableFrom(clazz)
+ || classLoader.loadClass("org.junit.runners.model.Statement").isAssignableFrom(clazz);
+ } catch (final ClassNotFoundException e) {
+ return false;
+ }
+ }
+
@Override
public Object[] resolve(final Method method) {
return OpenEJBEnricher.resolve(getAppContext(method.getDeclaringClass()), testClass.get(), method);