From: Mathieu Baudier Date: Tue, 17 Jul 2012 12:27:34 +0000 (+0000) Subject: Move to Commons Base X-Git-Tag: argeo-commons-2.1.30~890 X-Git-Url: https://git.argeo.org/?a=commitdiff_plain;h=db13075c0fbc2ebd8ca1f756a9bd88275a7a6a9a;p=lgpl%2Fargeo-commons.git Move to Commons Base git-svn-id: https://svn.argeo.org/commons/trunk@5472 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/base/runtime/org.argeo.support.junit/.classpath b/base/runtime/org.argeo.support.junit/.classpath new file mode 100644 index 000000000..3bf3adef5 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/.classpath @@ -0,0 +1,7 @@ + + + + >> + + + diff --git a/base/runtime/org.argeo.support.junit/.project b/base/runtime/org.argeo.support.junit/.project new file mode 100644 index 000000000..cc37598f2 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/.project @@ -0,0 +1,28 @@ + + + org.argeo.support.junit + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/base/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs b/base/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..383a4ec69 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,5 @@ +#Tue Oct 13 10:02:09 CEST 2009 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 +org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.source=1.5 diff --git a/base/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs b/base/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 000000000..721e27ec2 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,9 @@ +#Tue Oct 13 10:01:59 CEST 2009 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +includeModules=false +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/base/runtime/org.argeo.support.junit/pom.xml b/base/runtime/org.argeo.support.junit/pom.xml new file mode 100644 index 000000000..28e864707 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/pom.xml @@ -0,0 +1,64 @@ + + 4.0.0 + + org.argeo.commons.basic + runtime + 1.1.4-SNAPSHOT + .. + + org.argeo.support.junit + Commons Support JUnit + + + + org.apache.maven.plugins + maven-compiler-plugin + + + org.apache.maven.plugins + maven-source-plugin + + + org.apache.maven.plugins + maven-jar-plugin + + + org.apache.felix + maven-bundle-plugin + + + + + org.argeo.support.junit.* + + org.springframework.core.io,* + + + + + + + + org.argeo.tp + junit + + + org.argeo.tp + org.springframework.core + + + org.argeo.tp + org.springframework.context + + + org.argeo.tp + org.springframework.beans + + + + + org.argeo.tp + slf4j.org.apache.commons.logging + + + \ No newline at end of file diff --git a/base/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java b/base/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java new file mode 100644 index 000000000..3ceff6600 --- /dev/null +++ b/base/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java @@ -0,0 +1,108 @@ +/* + * Copyright (C) 2007-2012 Mathieu Baudier + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.argeo.support.junit; + +import java.util.Map; + +import junit.framework.TestCase; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.springframework.beans.factory.BeanFactoryUtils; +import org.springframework.beans.factory.ListableBeanFactory; +import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; + + +/** Helper for tests using a Spring application context. */ +public abstract class AbstractSpringTestCase extends TestCase { + protected final Log log = LogFactory.getLog(getClass()); + private ConfigurableApplicationContext context; + + /** + * Gets (and creates if necessary) the application context to use. Default + * implementation uses a class path xml application context and calls + * {@link #getApplicationContextLocation()}. + */ + protected ConfigurableApplicationContext getContext() { + if (context == null) { + context = new ClassPathXmlApplicationContext( + getApplicationContextLocation()); + if (getIsStartContext()) + context.start(); + } + return context; + } + + /** Whether the context should be started after being created. */ + protected Boolean getIsStartContext() { + return false; + } + + /** Returns a bean from the underlying context */ + @SuppressWarnings(value = { "unchecked" }) + protected T getBean(String beanId) { + return (T) getContext().getBean(beanId); + } + + protected T getBean(Class clss) { + T bean = loadSingleFromContext(getContext(), clss); + if (bean == null) { + throw new RuntimeException("Cannot retrieve a unique bean of type " + + clss); + } else { + return bean; + } + } + + /** + * The location of the application to load. The default implementation + * returns applicationContext.xml found in the same package as the + * test. + */ + protected String getApplicationContextLocation() { + return inPackage("applicationContext.xml"); + } + + /** + * Prefixes the package of the class after converting the '.' to '/' in + * order to have a resource path. + */ + protected String inPackage(String suffix) { + String prefix = getClass().getPackage().getName().replace('.', '/'); + return prefix + '/' + suffix; + } + + @SuppressWarnings(value = { "unchecked" }) + protected T loadSingleFromContext(ListableBeanFactory context, + Class clss) { + Map beans = BeanFactoryUtils.beansOfTypeIncludingAncestors( + context, clss, false, false); + if (beans.size() == 1) { + return beans.values().iterator().next(); + } else if (beans.size() > 1) { + if (log.isDebugEnabled()) { + log + .debug(("Found more that one bean for type " + clss + + ": " + beans.keySet())); + } + return null; + } else { + return null; + } + } + +} diff --git a/basic/runtime/org.argeo.support.junit/.classpath b/basic/runtime/org.argeo.support.junit/.classpath deleted file mode 100644 index 3bf3adef5..000000000 --- a/basic/runtime/org.argeo.support.junit/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - >> - - - diff --git a/basic/runtime/org.argeo.support.junit/.project b/basic/runtime/org.argeo.support.junit/.project deleted file mode 100644 index cc37598f2..000000000 --- a/basic/runtime/org.argeo.support.junit/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.argeo.support.junit - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff --git a/basic/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs b/basic/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 383a4ec69..000000000 --- a/basic/runtime/org.argeo.support.junit/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -#Tue Oct 13 10:02:09 CEST 2009 -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 -org.eclipse.jdt.core.compiler.compliance=1.5 -org.eclipse.jdt.core.compiler.source=1.5 diff --git a/basic/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs b/basic/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs deleted file mode 100644 index 721e27ec2..000000000 --- a/basic/runtime/org.argeo.support.junit/.settings/org.maven.ide.eclipse.prefs +++ /dev/null @@ -1,9 +0,0 @@ -#Tue Oct 13 10:01:59 CEST 2009 -activeProfiles= -eclipse.preferences.version=1 -fullBuildGoals=process-test-resources -includeModules=false -resolveWorkspaceProjects=true -resourceFilterGoals=process-resources resources\:testResources -skipCompilerPlugin=true -version=1 diff --git a/basic/runtime/org.argeo.support.junit/pom.xml b/basic/runtime/org.argeo.support.junit/pom.xml deleted file mode 100644 index 28e864707..000000000 --- a/basic/runtime/org.argeo.support.junit/pom.xml +++ /dev/null @@ -1,64 +0,0 @@ - - 4.0.0 - - org.argeo.commons.basic - runtime - 1.1.4-SNAPSHOT - .. - - org.argeo.support.junit - Commons Support JUnit - - - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-source-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.felix - maven-bundle-plugin - - - - - org.argeo.support.junit.* - - org.springframework.core.io,* - - - - - - - - org.argeo.tp - junit - - - org.argeo.tp - org.springframework.core - - - org.argeo.tp - org.springframework.context - - - org.argeo.tp - org.springframework.beans - - - - - org.argeo.tp - slf4j.org.apache.commons.logging - - - \ No newline at end of file diff --git a/basic/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java b/basic/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java deleted file mode 100644 index 3ceff6600..000000000 --- a/basic/runtime/org.argeo.support.junit/src/main/java/org/argeo/support/junit/AbstractSpringTestCase.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (C) 2007-2012 Mathieu Baudier - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.argeo.support.junit; - -import java.util.Map; - -import junit.framework.TestCase; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.beans.factory.BeanFactoryUtils; -import org.springframework.beans.factory.ListableBeanFactory; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; - - -/** Helper for tests using a Spring application context. */ -public abstract class AbstractSpringTestCase extends TestCase { - protected final Log log = LogFactory.getLog(getClass()); - private ConfigurableApplicationContext context; - - /** - * Gets (and creates if necessary) the application context to use. Default - * implementation uses a class path xml application context and calls - * {@link #getApplicationContextLocation()}. - */ - protected ConfigurableApplicationContext getContext() { - if (context == null) { - context = new ClassPathXmlApplicationContext( - getApplicationContextLocation()); - if (getIsStartContext()) - context.start(); - } - return context; - } - - /** Whether the context should be started after being created. */ - protected Boolean getIsStartContext() { - return false; - } - - /** Returns a bean from the underlying context */ - @SuppressWarnings(value = { "unchecked" }) - protected T getBean(String beanId) { - return (T) getContext().getBean(beanId); - } - - protected T getBean(Class clss) { - T bean = loadSingleFromContext(getContext(), clss); - if (bean == null) { - throw new RuntimeException("Cannot retrieve a unique bean of type " - + clss); - } else { - return bean; - } - } - - /** - * The location of the application to load. The default implementation - * returns applicationContext.xml found in the same package as the - * test. - */ - protected String getApplicationContextLocation() { - return inPackage("applicationContext.xml"); - } - - /** - * Prefixes the package of the class after converting the '.' to '/' in - * order to have a resource path. - */ - protected String inPackage(String suffix) { - String prefix = getClass().getPackage().getName().replace('.', '/'); - return prefix + '/' + suffix; - } - - @SuppressWarnings(value = { "unchecked" }) - protected T loadSingleFromContext(ListableBeanFactory context, - Class clss) { - Map beans = BeanFactoryUtils.beansOfTypeIncludingAncestors( - context, clss, false, false); - if (beans.size() == 1) { - return beans.values().iterator().next(); - } else if (beans.size() > 1) { - if (log.isDebugEnabled()) { - log - .debug(("Found more that one bean for type " + clss - + ": " + beans.keySet())); - } - return null; - } else { - return null; - } - } - -}