Author: tchemit Date: 2010-05-06 11:36:24 +0200 (Thu, 06 May 2010) New Revision: 1839 Url: http://nuiton.org/repositories/revision/nuiton-utils/1839 Log: use project target to generate things in test not system tmp dir please... Modified: trunk/src/test/java/org/nuiton/util/ZipUtilTest.java Modified: trunk/src/test/java/org/nuiton/util/ZipUtilTest.java =================================================================== --- trunk/src/test/java/org/nuiton/util/ZipUtilTest.java 2010-05-05 17:41:39 UTC (rev 1838) +++ trunk/src/test/java/org/nuiton/util/ZipUtilTest.java 2010-05-06 09:36:24 UTC (rev 1839) @@ -25,6 +25,12 @@ package org.nuiton.util; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; + import java.io.File; import java.io.FileFilter; import java.io.IOException; @@ -32,39 +38,76 @@ import java.util.Collections; import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.junit.Assert; -import org.junit.Test; - /** * ZipUtilTest.java - * + * <p/> * Created: 24 août 2006 10:47:21 * * @author poussin * @version $Revision$ - * - * Last update: $Date$ - * by : */ + * <p/> + * Last update: $Date$ + * by : + */ public class ZipUtilTest { /** to use log facility, just put in your code: log.info(\"...\"); */ private static Log log = LogFactory.getLog(ZipUtilTest.class); protected static final File DIR = new File(System.getProperty("java.home"), - "bin"); + "bin"); + protected static File testWorkDir; + + protected static File testResourcesDir; + + @BeforeClass + public static void initTest() throws IOException { + // get maven env basedir + String basedir = System.getenv("basedir"); + if (basedir == null) { + + // says basedir is where we start tests. + basedir = new File("").getAbsolutePath(); + } + File basedirFile = new File(basedir); + testWorkDir = new File(basedirFile, + "target" + File.separator + + "test-workdir"); + + boolean b = testWorkDir.exists() || testWorkDir.mkdirs(); + if (!b) { + throw new IOException( + "Could not create workdir directory " + testWorkDir); + } + + testResourcesDir = new File(basedirFile, + "src" + File.separator + + "test" + File.separator + + "resources" + File.separator + + "zip"); + } + + protected File createTempFile(String prefix, String suffix) throws IOException { + File file = File.createTempFile(prefix, suffix, testWorkDir); + return file; + } + + protected File createTempDirectory(String prefix, String suffix) throws IOException { + File file = FileUtil.createTempDirectory(prefix, suffix, testWorkDir); + return file; + } + @Test public void testUncompress() throws IOException { //File dir = new File(System.getProperty("user.dir")); - File zipFile = File.createTempFile("testCompressZip", ".zip"); + File zipFile = createTempFile("testCompressZip", ".zip"); zipFile.deleteOnExit(); log.info("Compress " + DIR + " in zip file = " + zipFile); ZipUtil.compress(zipFile, DIR, null); - File ucz = FileUtil.createTempDirectory("testUncompressZip", ""); + File ucz = createTempDirectory("testUncompressZip", ""); log.info("uncompress zip " + zipFile + " in " + ucz); ZipUtil.uncompress(zipFile, ucz); @@ -72,7 +115,8 @@ List<File> src = FileUtil.getFilteredElements(DIR, null, true); List<File> dest = FileUtil.getFilteredElements(ucz, null, true); - Assert.assertEquals(src.size() + 1, dest.size()); // +1 car il y a le rep lui meme dans dest + // +1 car il y a le rep lui meme dans dest + Assert.assertEquals(src.size() + 1, dest.size()); // remove created temp dirs : FileUtil.deleteRecursively(ucz); @@ -82,10 +126,11 @@ /* * Test method for 'org.nuiton.util.ZipUtil.compress(File, File, FileFilter)' */ + @Test public void testCompress() throws IOException { //File dir = new File(System.getProperty("user.dir")); - File zipFile = File.createTempFile("testCompressZip", ".zip"); + File zipFile = createTempFile("testCompressZip", ".zip"); zipFile.deleteOnExit(); log.info("Compress " + DIR + " in zip file = " + zipFile); @@ -98,7 +143,7 @@ @Test public void testCompressFilter() throws IOException { //File dir = new File(System.getProperty("user.dir")); - File zipFile = File.createTempFile("testCompressZip", ".zip"); + File zipFile = createTempFile("testCompressZip", ".zip"); zipFile.deleteOnExit(); log.info("Compress " + DIR + " in zip file = " + zipFile); @@ -119,9 +164,10 @@ @Test public void testCompressFile() throws IOException { - File dir = new File(System.getProperty("java.home"), "bin" - + File.separator + "java"); - File zipFile = File.createTempFile("testCompressZip", ".zip"); + File dir = new File(DIR, "java"); +// File dir = new File(System.getProperty("java.home"), "bin" +// + File.separator + "java"); + File zipFile = createTempFile("testCompressZip", ".zip"); zipFile.deleteOnExit(); log.info("Compress " + dir + " in zip file = " + zipFile); @@ -133,9 +179,8 @@ @Test public void testCompressFileMD5() throws IOException { - File dir = new File(System.getProperty("java.home"), "bin" - + File.separator + "java"); - File zipFile = File.createTempFile("testCompressZip", ".zip"); + File dir = new File(DIR, "java"); + File zipFile = createTempFile("testCompressZip", ".zip"); zipFile.deleteOnExit(); log.info("Compress " + dir + " in zip file = " + zipFile); @@ -152,15 +197,13 @@ /** * Test la fonction de decompression sans filtres. - * - * @throws IOException + * + * @throws IOException */ @Test public void testUncompressFiltredWithoutFilter() throws IOException { - File archive = new File("src" + File.separator + "test" - + File.separator + "resources" + File.separator + "zip" - + File.separator + "test-uncompress.zip"); - File dest = new File("target", "testunzip"); + File archive = new File(testResourcesDir, "test-uncompress.zip"); + File dest = new File(testWorkDir, "testunzip"); if (log.isInfoEnabled()) { log.info("Extracting " + archive + " to " + dest); @@ -173,15 +216,13 @@ /** * Test la fonction de decompression avec filtres. - * - * @throws IOException + * + * @throws IOException */ @Test public void testUncompressFiltredWithFilter() throws IOException { - File archive = new File("src" + File.separator + "test" - + File.separator + "resources" + File.separator + "zip" - + File.separator + "test-uncompress.zip"); - File dest = new File("target", "testunzip2"); + File archive = new File(testResourcesDir, "test-uncompress.zip"); + File dest = new File(testWorkDir, "testunzip2"); String pattern = ".*/scripts/.*"; if (log.isInfoEnabled()) {