r1891 - in trunk/src: main/java/org/nuiton/util test/java/org/nuiton/util
Author: fdesbois Date: 2010-06-22 20:26:01 +0200 (Tue, 22 Jun 2010) New Revision: 1891 Url: http://nuiton.org/repositories/revision/nuiton-utils/1891 Log: Evo #702 : Create class TestUtil Added: trunk/src/main/java/org/nuiton/util/TestUtil.java Modified: trunk/src/test/java/org/nuiton/util/ApplicationConfigTest.java Added: trunk/src/main/java/org/nuiton/util/TestUtil.java =================================================================== --- trunk/src/main/java/org/nuiton/util/TestUtil.java (rev 0) +++ trunk/src/main/java/org/nuiton/util/TestUtil.java 2010-06-22 18:26:01 UTC (rev 1891) @@ -0,0 +1,68 @@ +package org.nuiton.util; + +import org.apache.commons.logging.LogFactory; +import org.apache.commons.logging.Log; + +import java.io.File; +import java.io.IOException; + +/** + * This class contains useful methods for Tests. + * + * Created: 22 juin 2010 + * + * @author fdesbois <fdesbois@codelutin.com> + * @version $Id$ + */ +public class TestUtil { + + private static Log log = LogFactory.getLog(TestUtil.class); + + public static final String TESTS_DATA_DEFAULT_DIR = "surefire-data"; + + /** + * Create a directory in target directory for maven projects. The + * directory name will be the default one defined by {@link #TESTS_DATA_DEFAULT_DIR} + * + * @return the directory created + * @throws IOException for problem on directory creation + * @see #createTestsDataDirectory(String) + */ + public static File createDefaultTestsDataDirectory() { + return createTestsDataDirectory(TESTS_DATA_DEFAULT_DIR); + } + + /** + * Create a directory in target directory for maven projects. The + * directory will be called {@code dirName}. This directory will be useful + * to put all data created during tests. + * + * @return the directory created + * @throws IOException for problem on directory creation + */ + public static File createTestsDataDirectory(String dirName) { + // Search basedir from maven environment + String basedirPath = System.getenv("basedir"); + if (basedirPath == null) { + basedirPath = new File("").getAbsolutePath(); + } + + File result = new File(basedirPath, "target" + File.separator + dirName); + + try { + FileUtil.createDirectoryIfNecessary(result); + } catch (IOException eee) { + String errorMessage = "Error during tests data directory creation"; + if (log.isErrorEnabled()) { + log.error(errorMessage, eee); + } + throw new Error(errorMessage, eee); + } + + if (log.isDebugEnabled()) { + log.debug("Create tests data directory : " + result.getAbsolutePath()); + } + + return result; + } +} Modified: trunk/src/test/java/org/nuiton/util/ApplicationConfigTest.java =================================================================== --- trunk/src/test/java/org/nuiton/util/ApplicationConfigTest.java 2010-06-20 21:30:42 UTC (rev 1890) +++ trunk/src/test/java/org/nuiton/util/ApplicationConfigTest.java 2010-06-22 18:26:01 UTC (rev 1891) @@ -69,16 +69,9 @@ } @BeforeClass - public static void setUpClass() throws IOException { + public static void setUpClass() { // Initialize DIR_TESTS_DATA to target/surefire-data - String basedirPath = System.getenv("basedir"); - if (basedirPath == null) { - basedirPath = new File("").getAbsolutePath(); - } - DIR_TESTS_DATA = new File(basedirPath, - "target" + File.separator + "surefire-data"); - FileUtil.createDirectoryIfNecessary(DIR_TESTS_DATA); - log.info("Initialize main tests-data directory : " + DIR_TESTS_DATA.getAbsolutePath()); + DIR_TESTS_DATA = TestUtil.createDefaultTestsDataDirectory(); } @Test
participants (1)
-
fdesbois@users.nuiton.org