You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ma...@apache.org on 2012/02/03 09:54:57 UTC
svn commit: r1240032 - in
/felix/trunk/deploymentadmin/deploymentadmin/src/test: ./ java/ java/org/
java/org/apache/ java/org/apache/felix/
java/org/apache/felix/deploymentadmin/
Author: marrs
Date: Fri Feb 3 08:54:56 2012
New Revision: 1240032
URL: http://svn.apache.org/viewvc?rev=1240032&view=rev
Log:
FELIX-3336 Added a test case while trying to hunt down a potential bug.
Added:
felix/trunk/deploymentadmin/deploymentadmin/src/test/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/
felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java (with props)
Added: felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java?rev=1240032&view=auto
==============================================================================
--- felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java (added)
+++ felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java Fri Feb 3 08:54:56 2012
@@ -0,0 +1,63 @@
+package org.apache.felix.deploymentadmin;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipOutputStream;
+
+import junit.framework.TestCase;
+
+public class ExplodingOutputtingInputStreamTest extends TestCase {
+ public void testStream() throws Exception {
+ // fill up a stringbuffer with some test data
+ StringBuffer sb = new StringBuffer();
+ for (int i = 0; i < 1000; i++) {
+ sb.append("DATAdataDATAdata");
+ }
+ String data = sb.toString();
+
+ // create a temporary folder
+ File tempDir = File.createTempFile("temp", "dir");
+ tempDir.delete();
+ tempDir.mkdirs();
+ System.out.println("Dir: " + tempDir);
+
+ // create a zip file with two entries in it
+ File zipfile = new File(tempDir, "zipfile");
+ ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipfile));
+ String dummy1 = "dummy";
+ zos.putNextEntry(new ZipEntry(dummy1));
+ zos.write(data.getBytes());
+ zos.closeEntry();
+ String dummy2 = "dummy2";
+ zos.putNextEntry(new ZipEntry(dummy2));
+ zos.write(data.getBytes());
+ zos.closeEntry();
+ zos.close();
+
+ // create another temporary folder
+ File dir = new File(tempDir, "dir");
+ dir.mkdirs();
+ File index = new File(tempDir, "list");
+ ExplodingOutputtingInputStream stream = new ExplodingOutputtingInputStream(new FileInputStream(zipfile), index, dir);
+ byte[] buffer = new byte[2];
+ int read = stream.read(buffer);
+ while (read != -1) {
+ read = stream.read(buffer);
+ }
+ stream.close();
+
+ // create references to the unpacked dummy files
+ File d1 = new File(dir, dummy1);
+ File d2 = new File(dir, dummy2);
+
+ // cleanup
+ zipfile.delete();
+ index.delete();
+ d1.delete();
+ d2.delete();
+ dir.delete();
+ tempDir.delete();
+ }
+}
Propchange: felix/trunk/deploymentadmin/deploymentadmin/src/test/java/org/apache/felix/deploymentadmin/ExplodingOutputtingInputStreamTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain