X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Funit%2FAbstractSpringTestCase.java;h=a37c4a7ceb4147cdff4e031d2315cd02ea3d9b16;hb=f4ab9744b918f5358bb6283c224ec3b51b05fe95;hp=f0af1086ea977209e9c9def97e2a8c59d3439031;hpb=4702ba4b34097101ddfa7806f25ae5f698dbf0f4;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java index f0af1086e..a37c4a7ce 100644 --- a/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java +++ b/org.argeo.slc.core/src/main/java/org/argeo/slc/unit/AbstractSpringTestCase.java @@ -1,29 +1,25 @@ package org.argeo.slc.unit; -import java.util.Map; - import junit.framework.TestCase; -import org.springframework.context.ApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; - import org.argeo.slc.core.SlcException; -import org.argeo.slc.core.process.SlcExecution; +import org.argeo.slc.spring.SpringUtils; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; /** Helper for tests using a Spring application co,text. */ public abstract class AbstractSpringTestCase extends TestCase { protected final Log log = LogFactory.getLog(getClass()); - private ApplicationContext context; + private ConfigurableApplicationContext context; /** * Gets (and create if necessary) the application context to use. Default * implementation uses a class path xml application context and calls * {@link #getApplicationContextLocation()}. */ - protected ApplicationContext getContext() { + protected ConfigurableApplicationContext getContext() { if (context == null) { context = new ClassPathXmlApplicationContext( getApplicationContextLocation()); @@ -37,12 +33,12 @@ public abstract class AbstractSpringTestCase extends TestCase { } protected T getBean(Class clss) { - Map map = getContext().getBeansOfType(clss); - if (map.size() == 1) { - return map.values().iterator().next(); - } else { + T bean = SpringUtils.loadSingleFromContext(getContext(), clss); + if (bean == null) { throw new SlcException("Cannot retrieve a unique bean of type " + clss); + } else { + return bean; } }