commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bode...@apache.org
Subject svn commit: r744922 - in /commons/sandbox/compress/trunk/src: main/java/org/apache/commons/compress/changes/ test/java/org/apache/commons/compress/ test/java/org/apache/commons/compress/archivers/ test/java/org/apache/commons/compress/changes/ test/res...
Date Mon, 16 Feb 2009 14:19:48 GMT
Author: bodewig
Date: Mon Feb 16 14:19:43 2009
New Revision: 744922

URL: http://svn.apache.org/viewvc?rev=744922&view=rev
Log:
new testcases by Christian Grobmeier - SANDBOX-183

Added:
    commons/sandbox/compress/trunk/src/test/resources/test with spaces.txt   (with props)
    commons/sandbox/compress/trunk/src/test/resources/test3.xml   (with props)
    commons/sandbox/compress/trunk/src/test/resources/test4.xml   (with props)
Modified:
    commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/changes/ChangeSet.java
    commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/AbstractTestCase.java
    commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/DetectArchiverTestCase.java
    commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
    commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/changes/ChangeSetTestCase.java

Modified: commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/changes/ChangeSet.java
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/changes/ChangeSet.java?rev=744922&r1=744921&r2=744922&view=diff
==============================================================================
--- commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/changes/ChangeSet.java
(original)
+++ commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/changes/ChangeSet.java
Mon Feb 16 14:19:43 2009
@@ -66,7 +66,6 @@
 				if( change.type() == Change.TYPE_DELETE &&
 					entry.getName() != null &&
 					entry.getName().equals(change.targetFile())) {
-					System.out.println("Delete: " + entry.getName());
 					copy = false;
 					it.remove();
 					break;
@@ -83,7 +82,5 @@
 		out.putArchiveEntry(entry);
 		IOUtils.copy(in, out);
 		out.closeArchiveEntry();
-		System.out.println("Copy: " + entry.getName());
 	}
-
 }

Modified: commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/AbstractTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/AbstractTestCase.java?rev=744922&r1=744921&r2=744922&view=diff
==============================================================================
--- commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/AbstractTestCase.java
(original)
+++ commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/AbstractTestCase.java
Mon Feb 16 14:19:43 2009
@@ -18,10 +18,26 @@
  */
 package org.apache.commons.compress;
 
+import java.io.BufferedInputStream;
 import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.List;
 
 import junit.framework.TestCase;
 
+import org.apache.commons.compress.archivers.ArchiveEntry;
+import org.apache.commons.compress.archivers.ArchiveInputStream;
+import org.apache.commons.compress.archivers.ArchiveOutputStream;
+import org.apache.commons.compress.archivers.ArchiveStreamFactory;
+import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
+import org.apache.commons.compress.utils.IOUtils;
+
 public abstract class AbstractTestCase extends TestCase {
 
 	protected File dir;
@@ -30,6 +46,8 @@
 		dir = File.createTempFile("dir", "");
 		dir.delete();
 		dir.mkdir();
+
+		addURL(new File("src/test/resources").toURL());
 	}
 
 	protected File getFile( String path ) {
@@ -41,5 +59,126 @@
 		dir = null;
 	}
 
+	/**
+	 * Adds a URL to the classpath. This method is necessary when running 
+	 * junit tests from within eclipse.
+	 * @param url the url to add
+	 * @throws Exception if an error occurs
+	 */
+	public void addURL(URL url) throws Exception {
+		URLClassLoader classLoader = (URLClassLoader) ClassLoader.getSystemClassLoader();
+		Class clazz = URLClassLoader.class;
+
+		Method method= clazz.getDeclaredMethod("addURL", new Class[] { URL.class });
+		method.setAccessible(true);
+		method.invoke(classLoader, new Object[] { url });
+	}
 
+	/**
+	 * Creates an archive of 5 textbased files in several directories.
+	 * The archivername is the factory identifier for the archiver, for example
+	 * zip, tar, cpio, jar, ar.
+	 * The archive is created as a temp file.
+	 * 
+	 * The archive contains the following files:
+	 * <ul>
+	 * <li>testdata/test1.xml</li>
+	 * <li>testdata/test2.xml</li>
+	 * <li>test/test3.xml</li>
+	 * <li>bla/test4.xml</li>
+	 * <li>test.txt</li>
+	 * <li>something/bla</li>
+	 * <li>test with spaces.txt</li>
+	 * </ul>
+	 * 
+	 * @param archivename the identifier of this archive
+	 * @return the newly created file
+	 * @throws Exception in case something goes wrong
+	 */
+	protected File createArchive(String archivename) throws Exception {
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		try {
+			File temp = File.createTempFile("test", "." + archivename);
+			
+			final OutputStream stream = new FileOutputStream(temp);
+			out = new ArchiveStreamFactory().createArchiveOutputStream(archivename, stream);
+			
+			final File file1 = getFile("test1.xml");
+			final File file2 = getFile("test2.xml");
+			final File file3 = getFile("test3.xml");
+			final File file4 = getFile("test4.xml");
+			final File file5 = getFile("test.txt");
+			final File file6 = getFile("test with spaces.txt");
+			
+			ZipArchiveEntry entry = new ZipArchiveEntry("testdata/test1.xml");
+			entry.setSize(file1.length());
+	        out.putArchiveEntry(entry);
+	        IOUtils.copy(new FileInputStream(file1), out);
+	        out.closeArchiveEntry();
+	        
+	        out.putArchiveEntry(new ZipArchiveEntry("testdata/test2.xml"));
+	        IOUtils.copy(new FileInputStream(file2), out);
+	        out.closeArchiveEntry();
+
+	        out.putArchiveEntry(new ZipArchiveEntry("test/test3.xml"));
+	        IOUtils.copy(new FileInputStream(file3), out);
+	        out.closeArchiveEntry();
+	        
+	        out.putArchiveEntry(new ZipArchiveEntry("bla/test4.xml"));
+	        IOUtils.copy(new FileInputStream(file4), out);
+	        out.closeArchiveEntry();
+	        
+	        out.putArchiveEntry(new ZipArchiveEntry("test.txt"));
+	        IOUtils.copy(new FileInputStream(file5), out);
+	        out.closeArchiveEntry();
+	        
+	        out.putArchiveEntry(new ZipArchiveEntry("something/bla"));
+	        IOUtils.copy(new FileInputStream(file6), out);
+	        out.closeArchiveEntry();
+	        
+	        out.putArchiveEntry(new ZipArchiveEntry("test with spaces.txt"));
+	        IOUtils.copy(new FileInputStream(file6), out);
+	        out.closeArchiveEntry();
+	        
+	     	return temp;
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+	}
+	
+	/**
+	 * Checks if an archive contains all expected files.
+	 * 
+	 * @param archive 
+	 * 				the archive to check
+	 * @param expected 
+	 * 				a list with expected string filenames
+	 * @throws Exception
+	 */
+	protected void checkArchiveContent(File archive, List expected) 
+	 	throws Exception {
+	    final InputStream is = new FileInputStream(archive);
+	    final BufferedInputStream buf = new BufferedInputStream(is);
+	    final ArchiveInputStream in = new ArchiveStreamFactory().createArchiveInputStream(buf);
+	 
+	    File result = File.createTempFile("dir-result", "");
+	    result.delete();
+	    result.mkdir();
+			
+	    ArchiveEntry entry = null;
+	    while((entry = (ArchiveEntry)in.getNextEntry()) != null) {
+	      	File outfile = new File(result.getCanonicalPath() + "/result/" + entry.getName());
+	       	outfile.getParentFile().mkdirs();
+	       	OutputStream out = new FileOutputStream(outfile);
+		    if(!expected.remove(entry.getName())) {
+		       	fail("unexpected entry: " + entry.getName());
+		    } 
+		    IOUtils.copy(in, out);
+		    out.close();
+	    }
+	    in.close();
+	    assertEquals(expected.size(), 0);
+	}
 }

Modified: commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/DetectArchiverTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/DetectArchiverTestCase.java?rev=744922&r1=744921&r2=744922&view=diff
==============================================================================
--- commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/DetectArchiverTestCase.java
(original)
+++ commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/DetectArchiverTestCase.java
Mon Feb 16 14:19:43 2009
@@ -32,7 +32,7 @@
 import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
 import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
 
-public final class DetectArchiverTestCase extends TestCase {
+public final class DetectArchiverTestCase extends AbstractTestCase {
 	public void testDetection() throws Exception {
 		final ArchiveStreamFactory factory = new ArchiveStreamFactory();
 

Modified: commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java?rev=744922&r1=744921&r2=744922&view=diff
==============================================================================
--- commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
(original)
+++ commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/archivers/ZipTestCase.java
Mon Feb 16 14:19:43 2009
@@ -23,48 +23,81 @@
 import java.io.FileOutputStream;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.List;
 
+import org.apache.commons.compress.AbstractTestCase;
 import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
 import org.apache.commons.compress.utils.IOUtils;
 
-import org.apache.commons.compress.AbstractTestCase;
-
 public final class ZipTestCase extends AbstractTestCase {
+	/**
+	 * Archives 2 files and unarchives it again. If the file length of result
+	 * and source is the same, it looks like the operations have worked
+	 * @throws Exception
+	 */
 	public void testZipArchiveCreation() throws Exception {
-		
+		// Archive
 		final File output = new File(dir, "bla.zip");
-		
 		final File file1 = getFile("test1.xml");
 		final File file2 = getFile("test2.xml");
-		
-        final OutputStream out = new FileOutputStream(output);
-        
-        final ArchiveOutputStream os = new ArchiveStreamFactory().createArchiveOutputStream("zip",
out);
 
-        os.putArchiveEntry(new ZipArchiveEntry("testdata/test1.xml"));
-        IOUtils.copy(new FileInputStream(file1), os);
-        os.closeArchiveEntry();
-        
-        os.putArchiveEntry(new ZipArchiveEntry("testdata/test2.xml"));
-        IOUtils.copy(new FileInputStream(file2), os);
-        os.closeArchiveEntry();
+		{
+			final OutputStream out = new FileOutputStream(output);
+	        final ArchiveOutputStream os = new ArchiveStreamFactory().createArchiveOutputStream("zip",
out);
+	
+	        os.putArchiveEntry(new ZipArchiveEntry("testdata/test1.xml"));
+	        IOUtils.copy(new FileInputStream(file1), os);
+	        os.closeArchiveEntry();
+	        
+	        os.putArchiveEntry(new ZipArchiveEntry("testdata/test2.xml"));
+	        IOUtils.copy(new FileInputStream(file2), os);
+	        os.closeArchiveEntry();
+	        os.close();
+		}
+		
+		// Unarchive the same
+		List results = new ArrayList();
+		
+        {
+	        final InputStream is = new FileInputStream(output);
+	        final ArchiveInputStream in = new ArchiveStreamFactory().createArchiveInputStream("zip",
is);
+	 
+	        File result = File.createTempFile("dir-result", "");
+	        result.delete();
+	        result.mkdir();
+			
+	        ZipArchiveEntry entry = null;
+	        while((entry = (ZipArchiveEntry)in.getNextEntry()) != null) {
+	        	File outfile = new File(result.getCanonicalPath() + "/result/" + entry.getName());
+	        	outfile.getParentFile().mkdirs();
+	        	OutputStream out = new FileOutputStream(outfile);
+		        IOUtils.copy(in, out);
+		        out.close();
+		        results.add(outfile);
+	        }
+	        in.close();
+        }
         
-        os.close();
+        assertEquals(results.size(), 2);
+        File result = (File)results.get(0);
+        assertEquals(file1.length(), result.length());
+        result = (File)results.get(1);
+        assertEquals(file2.length(), result.length());
     }
+	
+    /**
+     * Simple unarchive test. Asserts nothing.
+     * @throws Exception
+     */
     public void testZipUnarchive() throws Exception {
-
 		final File input = getFile("bla.zip");
-    	
         final InputStream is = new FileInputStream(input);
         final ArchiveInputStream in = new ArchiveStreamFactory().createArchiveInputStream("zip",
is);
- 
         final ZipArchiveEntry entry = (ZipArchiveEntry)in.getNextEntry();
         final OutputStream out = new FileOutputStream(new File(dir, entry.getName()));
-        
         IOUtils.copy(in, out);
-    
         out.close();
         in.close();
     }
-
 }

Modified: commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/changes/ChangeSetTestCase.java
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/changes/ChangeSetTestCase.java?rev=744922&r1=744921&r2=744922&view=diff
==============================================================================
--- commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/changes/ChangeSetTestCase.java
(original)
+++ commons/sandbox/compress/trunk/src/test/java/org/apache/commons/compress/changes/ChangeSetTestCase.java
Mon Feb 16 14:19:43 2009
@@ -22,8 +22,11 @@
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
 
 import org.apache.commons.compress.AbstractTestCase;
+import org.apache.commons.compress.archivers.ArchiveEntry;
 import org.apache.commons.compress.archivers.ArchiveInputStream;
 import org.apache.commons.compress.archivers.ArchiveOutputStream;
 import org.apache.commons.compress.archivers.ArchiveStreamFactory;
@@ -32,8 +35,237 @@
 import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
 import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
 
+/**
+ * Checks several ChangeSet business logics.
+ */
 public final class ChangeSetTestCase extends AbstractTestCase {
+	/**
+	 * Tries to delete the folder "bla" from a zip file.
+	 * This should result in the deletion of bla/*, which 
+	 * actually means bla/test4.xml should be removed from this zipfile.
+	 * The file something/bla (without ending, named like the folder) should
+	 * not be deleted.
+	 * 
+	 * @throws Exception
+	 */
+	public void XtestDeleteDir() throws Exception {
+		File input = this.createArchive("zip");
+		
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		File result = File.createTempFile("test", ".zip");
+		try {
+			
+			final InputStream is = new FileInputStream(input);
+			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
+			
+			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(result));
+
+			ChangeSet changes = new ChangeSet();
+			changes.delete("bla");
+			changes.perform(ais, out);
+			
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+		
+		List expected = new ArrayList();
+		expected.add("testdata/test1.xml");
+		expected.add("testdata/test2.xml");
+		expected.add("test/test3.xml");
+		expected.add("test.txt");
+		expected.add("something/bla");
+		expected.add("test with spaces.txt");
+		
+		this.checkArchiveContent(result, expected);
+	}
+	
+	/**
+	 * Tries to delete a directory with a file and adds 
+	 * a new directory with a new file and with the same name.
+     * Should delete dir1/* and add dir1/test.txt at the end
+     * 
+	 * @throws Exception
+	 */
+	public void XtestDeletePlusAdd() throws Exception {
+		File input = this.createArchive("zip");
+		
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		File result = File.createTempFile("test", ".zip");
+		try {
+			
+			final InputStream is = new FileInputStream(input);
+			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
+			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(result));
+
+			ChangeSet changes = new ChangeSet();
+			changes.delete("bla");
+			
+			// Add a file
+			final File file1 = getFile("test.txt");
+			ArchiveEntry entry = new ZipArchiveEntry("bla/test.txt");
+			changes.add(entry, new FileInputStream(file1));
+
+			changes.perform(ais, out);
+			
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+		
+		List expected = new ArrayList();
+		expected.add("testdata/test1.xml");
+		expected.add("testdata/test2.xml");
+		expected.add("test/test3.xml");
+		expected.add("test.txt");
+		expected.add("something/bla");
+		expected.add("bla/test.txt");
+		expected.add("test with spaces.txt");
+		
+		this.checkArchiveContent(result, expected);
+	}
+	
+	/**
+	 * Adds a file to a zip archive. Deletes an other file.
+	 * @throws Exception
+	 */
+	public void testDeleteFromAndAddToZip() throws Exception {
+		File input = this.createArchive("zip");
+		
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		File result = File.createTempFile("test", ".zip");
+		try {
+			
+			final InputStream is = new FileInputStream(input);
+			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
+			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(result));
 
+			ChangeSet changes = new ChangeSet();
+			
+			final File file1 = getFile("test.txt");
+			ArchiveEntry entry = new ZipArchiveEntry("blub/test.txt");
+			changes.add(entry, new FileInputStream(file1));
+			
+			changes.delete("testdata/test1.xml");
+			
+			changes.perform(ais, out);
+			
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+		
+		List expected = new ArrayList();
+		expected.add("testdata/test2.xml");
+		expected.add("test/test3.xml");
+		expected.add("blub/test.txt");
+		expected.add("test.txt");
+		expected.add("something/bla");
+		expected.add("bla/test4.xml");
+		expected.add("test with spaces.txt");
+		
+		this.checkArchiveContent(result, expected);
+	}
+	
+	/**
+	 * add blub/test.txt + delete blub
+     * Should add dir1/test.txt and delete it afterwards. In this example,
+     * the zip archive should stay untouched.
+	 * @throws Exception
+	 */
+	public void XtestAddDeleteAdd() throws Exception {
+		File input = this.createArchive("zip");
+		
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		File result = File.createTempFile("test", ".zip");
+		try {
+			
+			final InputStream is = new FileInputStream(input);
+			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
+			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(result));
+
+			ChangeSet changes = new ChangeSet();
+			
+			final File file1 = getFile("test.txt");
+			ArchiveEntry entry = new ZipArchiveEntry("blub/test.txt");
+			changes.add(entry, new FileInputStream(file1));
+			
+			changes.delete("blub");
+			
+			changes.perform(ais, out);
+			
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+		
+		List expected = new ArrayList();
+		expected.add("testdata/test1.xml");
+		expected.add("testdata/test2.xml");
+		expected.add("test/test3.xml");
+		expected.add("test.txt");
+		expected.add("something/bla");
+		expected.add("bla/test4.xml");
+		expected.add("test with spaces.txt");
+		
+		this.checkArchiveContent(result, expected);
+	}
+	
+	
+	/**
+	 * delete bla + add bla/test.txt + delete bla
+	 * Deletes dir1/* first, then surpresses the add of bla.txt cause there
+	 * is a delete operation later.
+	 * @throws Exception
+	 */
+	public void XtestDeleteAddDelete() throws Exception {
+		File input = this.createArchive("zip");
+		
+		ArchiveOutputStream out = null;
+		ArchiveInputStream ais = null;
+		File result = File.createTempFile("test", ".zip");
+		try {
+			
+			final InputStream is = new FileInputStream(input);
+			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
+			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(result));
+
+			ChangeSet changes = new ChangeSet();
+			
+			changes.delete("bla");
+			
+			final File file1 = getFile("test.txt");
+			ArchiveEntry entry = new ZipArchiveEntry("bla/test.txt");
+			changes.add(entry, new FileInputStream(file1));
+			
+			changes.delete("bla");
+			
+			changes.perform(ais, out);
+			
+		} finally {
+			if(out != null) out.close();
+			if(ais != null) ais.close();
+		}
+		
+		List expected = new ArrayList();
+		expected.add("testdata/test1.xml");
+		expected.add("testdata/test2.xml");
+		expected.add("test/test3.xml");
+		expected.add("test.txt");
+		expected.add("something/bla");
+		expected.add("test with spaces.txt");
+		
+		this.checkArchiveContent(result, expected);
+	}
+	
+	/**
+	 * Simple Delete from a zip file.
+	 * @throws Exception
+	 */
 	public void testDeleteFromZip() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -47,15 +279,19 @@
 			
 			File temp = File.createTempFile("test", ".zip");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
-	
+
+	/**
+	 * Simple delete from a tar file
+	 * @throws Exception
+	 */
 	public void testDeleteFromTar() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -69,15 +305,19 @@
 			
 			File temp = new File(dir, "bla.tar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("tar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
 
+	/**
+	 * Simple delete from a jar file
+	 * @throws Exception
+	 */
 	public void testDeleteFromJar() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -92,15 +332,19 @@
 			
 			File temp = new File(dir, "bla.jar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("jar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
-	
+
+	/**
+	 * Simple delete from an ar file
+	 * @throws Exception
+	 */
 	public void testDeleteFromAr() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -114,40 +358,13 @@
 			
 			File temp = new File(dir, "bla.ar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("ar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
-			changes.perform(ais, out);
-		} finally {
-			if(out != null) out.close();
-			if(ais != null) ais.close();
-		}
-	}
-	
-	public void testDeleteFromAndAddToZip() throws Exception {
-		ArchiveOutputStream out = null;
-		ArchiveInputStream ais = null;
-		try {
-			ChangeSet changes = new ChangeSet();
-			changes.delete("test2.xml");
-			
-			
-			final File file1 = getFile("test.txt");
-			ZipArchiveEntry entry = new ZipArchiveEntry("testdata/test.txt");
-	        changes.add(entry, new FileInputStream(file1));
-			
-			final File input = getFile("bla.zip");
-			final InputStream is = new FileInputStream(input);
-			ais = new ArchiveStreamFactory().createArchiveInputStream("zip", is);
-			
-			File temp = new File(dir, "bla.zip");
-			out = new ArchiveStreamFactory().createArchiveOutputStream("zip", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
 
 	public void testDeleteFromAndAddToTar() throws Exception {
@@ -157,7 +374,6 @@
 			ChangeSet changes = new ChangeSet();
 			changes.delete("test2.xml");
 			
-			
 			final File file1 = getFile("test.txt");
 			
 			final TarArchiveEntry entry = new TarArchiveEntry("testdata/test.txt");
@@ -177,15 +393,19 @@
 			
 			File temp = new File(dir, "bla.tar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("tar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
 	
+	/**
+	 * Delete from a jar file and add another file
+	 * @throws Exception
+	 */
 	public void testDeleteFromAndAddToJar() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -203,15 +423,19 @@
 			
 			File temp = new File(dir, "bla.jar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("jar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
 	}
-	
+
+	/**
+	 * Deletes a file from an AR-archive and adds another
+	 * @throws Exception
+	 */
 	public void testDeleteFromAndAddToAr() throws Exception {
 		ArchiveOutputStream out = null;
 		ArchiveInputStream ais = null;
@@ -231,12 +455,35 @@
 			
 			File temp = new File(dir, "bla.ar");
 			out = new ArchiveStreamFactory().createArchiveOutputStream("ar", new FileOutputStream(temp));
-			
-			System.out.println(temp.getAbsolutePath());
+
 			changes.perform(ais, out);
 		} finally {
 			if(out != null) out.close();
 			if(ais != null) ais.close();
 		}
+		// TODO add asserts
+	}
+	
+	/**
+	 * TODO: Move operations are not supported currently
+	 * 
+	 * mv dir1/test.text dir2/test.txt + delete dir1
+	 * Moves the file to dir2 and deletes everything in dir1
+	 * @throws Exception
+	 */
+	public void testRenameAndDelete() throws Exception {
+	}
+	
+	/**
+	 * TODO: Move operations are not supported currently
+	 * 
+	 * add dir1/bla.txt + mv dir1/test.text dir2/test.txt + delete dir1
+	 * 
+	 * Add dir1/bla.txt should be surpressed. All other dir1 files will be
+	 * deleted, except dir1/test.text will be moved
+	 * 
+	 * @throws Exception
+	 */
+	public void testAddMoveDelete() throws Exception {
 	}
 }

Added: commons/sandbox/compress/trunk/src/test/resources/test with spaces.txt
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/resources/test%20with%20spaces.txt?rev=744922&view=auto
==============================================================================
--- commons/sandbox/compress/trunk/src/test/resources/test with spaces.txt (added)
+++ commons/sandbox/compress/trunk/src/test/resources/test with spaces.txt Mon Feb 16 14:19:43
2009
@@ -0,0 +1,11 @@
+TEST WITH SPACES IN FILENAME
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
+111111111111111111111111111000101011
\ No newline at end of file

Propchange: commons/sandbox/compress/trunk/src/test/resources/test with spaces.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/sandbox/compress/trunk/src/test/resources/test3.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/resources/test3.xml?rev=744922&view=auto
==============================================================================
--- commons/sandbox/compress/trunk/src/test/resources/test3.xml (added)
+++ commons/sandbox/compress/trunk/src/test/resources/test3.xml Mon Feb 16 14:19:43 2009
@@ -0,0 +1,10 @@
+<?xml version = '1.0'?>
+<!DOCTYPE connections>
+<text>
+Lorem ipsum dolor sit amet, consetetur sadipscing elitr, 
+sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, 
+sed diam voluptua. 
+At vero eos et accusam et justo duo dolores et ea rebum. 
+Stet clita kasd gubergren, no sea takimata sanctus est 
+Lorem ipsum dolor sit amet.
+</text>

Propchange: commons/sandbox/compress/trunk/src/test/resources/test3.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: commons/sandbox/compress/trunk/src/test/resources/test4.xml
URL: http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/test/resources/test4.xml?rev=744922&view=auto
==============================================================================
--- commons/sandbox/compress/trunk/src/test/resources/test4.xml (added)
+++ commons/sandbox/compress/trunk/src/test/resources/test4.xml Mon Feb 16 14:19:43 2009
@@ -0,0 +1,6 @@
+<?xml version = '1.0'?>
+<!DOCTYPE connections>
+<connections>
+German Umlauts: ÜÄÖß
+Stored as UTF-8 (Mac OSX 10.4.x)
+</connections>

Propchange: commons/sandbox/compress/trunk/src/test/resources/test4.xml
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message