[jboss-cvs] JBossAS SVN: r72329 - in projects/vfs/trunk/src: test/java/org/jboss/test/virtual/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Apr 17 04:09:37 EDT 2008


Author: alesj
Date: 2008-04-17 04:09:37 -0400 (Thu, 17 Apr 2008)
New Revision: 72329

Modified:
   projects/vfs/trunk/src/main/java/org/jboss/virtual/VFSUtils.java
   projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/UnpackTestCase.java
Log:
Fixing the name on replacement.

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/VFSUtils.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/VFSUtils.java	2008-04-17 05:45:08 UTC (rev 72328)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/VFSUtils.java	2008-04-17 08:09:37 UTC (rev 72329)
@@ -517,10 +517,8 @@
       if (file == null)
          throw new IllegalArgumentException("Null file");
 
-      File unpacked = new File(getTempDirectory(), GUID.asString());
-      if (unpacked.mkdir() == false)
-         throw new IllegalArgumentException("Cannot create directory: " + unpacked);
-      unpacked.deleteOnExit();
+      File guidDir = createTempDirectory(getTempDirectory(), GUID.asString());
+      File unpacked = createTempDirectory(guidDir, file.getName());
 
       VirtualFileHandler handler = file.getHandler();
       unpack(handler, unpacked, false);
@@ -534,6 +532,22 @@
    }
 
    /**
+    * Create the temp directory.
+    *
+    * @param parent the parent
+    * @param name the dir name
+    * @return new directory
+    */
+   private static File createTempDirectory(File parent, String name)
+   {
+      File file = new File(parent, name);
+      if (file.mkdir() == false)
+         throw new IllegalArgumentException("Cannot create directory: " + file);
+      file.deleteOnExit();
+      return file;
+   }
+
+   /**
     * Unpack the root into file.
     * Repeat this on the root's children.
     *

Modified: projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/UnpackTestCase.java
===================================================================
--- projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/UnpackTestCase.java	2008-04-17 05:45:08 UTC (rev 72328)
+++ projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/UnpackTestCase.java	2008-04-17 08:09:37 UTC (rev 72329)
@@ -25,6 +25,7 @@
 import java.io.InputStream;
 import java.io.BufferedReader;
 import java.io.InputStreamReader;
+import java.io.IOException;
 
 import junit.framework.Test;
 import org.jboss.virtual.VFS;
@@ -91,7 +92,7 @@
 
       original = vfs.findChild("level1.zip");
       replacement = VFSUtils.unpack(original);
-      assertEquals(original.getParent(), replacement.getParent());
+      assertReplacement(original, replacement);
       VirtualFile parent = original.getParent();
       VirtualFile child = parent.findChild("level1.zip");
       assertEquals(replacement, child);
@@ -115,7 +116,7 @@
 
       original = vfs.findChild("level1.zip/level2.zip");
       replacement = VFSUtils.unpack(original);
-      assertEquals(original.getParent(), replacement.getParent());
+      assertReplacement(original, replacement);
       VirtualFile parent = original.getParent();
       VirtualFile child = parent.findChild("level2.zip");
       assertEquals(replacement, child);
@@ -136,7 +137,7 @@
 
       original = vfs.findChild("level1.zip/level2.zip/level3.zip");
       replacement = VFSUtils.unpack(original);
-      assertEquals(original.getParent(), replacement.getParent());
+      assertReplacement(original, replacement);
       VirtualFile parent = original.getParent();
       VirtualFile child = parent.findChild("level3.zip");
       assertEquals(replacement, child);
@@ -145,6 +146,18 @@
       testText(textThree);
    }
 
+   protected void assertReplacement(VirtualFile original, VirtualFile replacement) throws IOException
+   {
+      assertEquals(original.getName(), replacement.getName());
+      assertEquals(original.getPathName(), replacement.getPathName());
+      // it's a directory
+      assertEquals(0, replacement.getSize());
+      assertEquals(original.exists(), replacement.exists());
+      assertEquals(original.isLeaf(), replacement.isLeaf());
+      assertEquals(original.isHidden(), replacement.isHidden());
+      assertEquals(original.getParent(), replacement.getParent());
+   }
+
    protected void testText(VirtualFile file) throws Exception
    {
       InputStream in = file.openStream();




More information about the jboss-cvs-commits mailing list