Author: bentmann
Date: Wed Sep  3 12:53:40 2008
New Revision: 691750

URL: http://svn.apache.org/viewvc?rev=691750&view=rev
Log:
[MSHARED-58] FileSetManager.delete() fails to delete dangling symlinks

o Added to test to prove fix from PLXUTILS-28

Added:
    
maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/
    
maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/test.txt
   (with props)
Modified:
    
maven/shared/trunk/file-management/src/test/java/org/apache/maven/shared/model/fileset/util/FileSetUtilsTest.java

Modified: 
maven/shared/trunk/file-management/src/test/java/org/apache/maven/shared/model/fileset/util/FileSetUtilsTest.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/file-management/src/test/java/org/apache/maven/shared/model/fileset/util/FileSetUtilsTest.java?rev=691750&r1=691749&r2=691750&view=diff
==============================================================================
--- 
maven/shared/trunk/file-management/src/test/java/org/apache/maven/shared/model/fileset/util/FileSetUtilsTest.java
 (original)
+++ 
maven/shared/trunk/file-management/src/test/java/org/apache/maven/shared/model/fileset/util/FileSetUtilsTest.java
 Wed Sep  3 12:53:40 2008
@@ -168,6 +168,34 @@
     }
 
     /**
+     * @throws Exception if any
+     */
+    public void testDeleteDanglingSymlink()
+        throws Exception
+    {
+        File directory = setupTestDirectory( "testDeleteDanglingSymlink" );
+        File targetFile = new File( directory, "test.txt" );
+        File linkFile = new File( directory, "symlink" );
+
+        if ( !createSymlink( targetFile, linkFile ) )
+        {
+            // symlinks apparently not supported, skip test
+            return;
+        }
+        targetFile.delete();
+
+        FileSet set = new FileSet();
+        set.setDirectory( directory.getPath() );
+        set.addInclude( "**" );
+
+        FileSetManager fileSetManager = new FileSetManager();
+
+        fileSetManager.delete( set );
+
+        Assert.assertFalse( "directory still exists", directory.exists() );
+    }
+
+    /**
      * @param from
      * @param to
      * @return
@@ -184,9 +212,9 @@
 
         Commandline cli = new Commandline();
         cli.setExecutable( "ln" );
-        cli.createArgument().setLine( "-s" );
-        cli.createArgument().setLine( from.getPath() );
-        cli.createArgument().setLine( to.getPath() );
+        cli.createArg().setLine( "-s" );
+        cli.createArg().setLine( from.getPath() );
+        cli.createArg().setLine( to.getPath() );
 
         int result = cli.execute().waitFor();
 

Added: 
maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/test.txt
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/test.txt?rev=691750&view=auto
==============================================================================
    (empty)

Propchange: 
maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/test.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/shared/trunk/file-management/src/test/resources/testDeleteDanglingSymlink/test.txt
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision


Reply via email to