Added symlink test project

git-svn-id: https://svn.apache.org/repos/asf/maven/shared/trunk@1627861 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/org/apache/maven/shared/utils/io/DirectoryScannerTest.java b/src/test/java/org/apache/maven/shared/utils/io/DirectoryScannerTest.java
index 3802070..796b226 100644
--- a/src/test/java/org/apache/maven/shared/utils/io/DirectoryScannerTest.java
+++ b/src/test/java/org/apache/maven/shared/utils/io/DirectoryScannerTest.java
@@ -115,6 +115,20 @@
     }
 
     @Test
+    public void followSymlinks(){
+        DirectoryScanner ds = new DirectoryScanner();
+        ds.setBasedir( new File("src/test/resources/symlinks/src/") );
+        ds.setFollowSymlinks( false );
+        ds.scan();
+        List<String> included = Arrays.asList( ds.getIncludedFiles() );
+        System.out.println( "includedFiles(nosymlinks) = " + included );
+        ds.setFollowSymlinks( true );
+        ds.scan();
+        included = Arrays.asList( ds.getIncludedFiles() );
+        System.out.println( "includedFiles(symlinks  ) = " + included );
+    }
+
+    @Test
     public void testSimpleExcludes()
         throws Exception
     {
diff --git a/src/test/resources/symlinks/dirOnTheOutside/FileInDirOnTheOutside.txt b/src/test/resources/symlinks/dirOnTheOutside/FileInDirOnTheOutside.txt
new file mode 100644
index 0000000..8ce65d7
--- /dev/null
+++ b/src/test/resources/symlinks/dirOnTheOutside/FileInDirOnTheOutside.txt
@@ -0,0 +1 @@
+I am on the outside...
diff --git a/src/test/resources/symlinks/onTheOutside.txt b/src/test/resources/symlinks/onTheOutside.txt
new file mode 100644
index 0000000..ee7733b
--- /dev/null
+++ b/src/test/resources/symlinks/onTheOutside.txt
@@ -0,0 +1 @@
+I am on the outside of the src
diff --git a/src/test/resources/symlinks/regen.sh b/src/test/resources/symlinks/regen.sh
new file mode 100755
index 0000000..f3c3a9d
--- /dev/null
+++ b/src/test/resources/symlinks/regen.sh
@@ -0,0 +1,6 @@
+rm symlinks.zip
+rm symlinks.tar
+cd src
+zip --symlinks ../symlinks.zip file* targetDir sym*
+tar -cvf ../symlinks.tar file* targetDir sym*
+
diff --git a/src/test/resources/symlinks/src/aRegularDir/aRegularFile.txt b/src/test/resources/symlinks/src/aRegularDir/aRegularFile.txt
new file mode 100644
index 0000000..6d542ad
--- /dev/null
+++ b/src/test/resources/symlinks/src/aRegularDir/aRegularFile.txt
@@ -0,0 +1 @@
+I am just an ordinary file
diff --git a/src/test/resources/symlinks/src/fileR.txt b/src/test/resources/symlinks/src/fileR.txt
new file mode 100644
index 0000000..44e5c84
--- /dev/null
+++ b/src/test/resources/symlinks/src/fileR.txt
@@ -0,0 +1 @@
+This file is a source. r r r filemode
diff --git a/src/test/resources/symlinks/src/fileW.txt b/src/test/resources/symlinks/src/fileW.txt
new file mode 100644
index 0000000..64fc294
--- /dev/null
+++ b/src/test/resources/symlinks/src/fileW.txt
@@ -0,0 +1 @@
+all w
diff --git a/src/test/resources/symlinks/src/fileX.txt b/src/test/resources/symlinks/src/fileX.txt
new file mode 100755
index 0000000..d6459e0
--- /dev/null
+++ b/src/test/resources/symlinks/src/fileX.txt
@@ -0,0 +1 @@
+xxx
diff --git a/src/test/resources/symlinks/src/symDir b/src/test/resources/symlinks/src/symDir
new file mode 120000
index 0000000..29b5d5c
--- /dev/null
+++ b/src/test/resources/symlinks/src/symDir
@@ -0,0 +1 @@
+targetDir/
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/symLinkToDirOnTheOutside b/src/test/resources/symlinks/src/symLinkToDirOnTheOutside
new file mode 120000
index 0000000..eec25f5
--- /dev/null
+++ b/src/test/resources/symlinks/src/symLinkToDirOnTheOutside
@@ -0,0 +1 @@
+../dirOnTheOutside/
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/symLinkToFileOnTheOutside b/src/test/resources/symlinks/src/symLinkToFileOnTheOutside
new file mode 120000
index 0000000..fd1227b
--- /dev/null
+++ b/src/test/resources/symlinks/src/symLinkToFileOnTheOutside
@@ -0,0 +1 @@
+../onTheOutside.txt
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/symR b/src/test/resources/symlinks/src/symR
new file mode 120000
index 0000000..114a517
--- /dev/null
+++ b/src/test/resources/symlinks/src/symR
@@ -0,0 +1 @@
+fileR.txt
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/symW b/src/test/resources/symlinks/src/symW
new file mode 120000
index 0000000..19a642c
--- /dev/null
+++ b/src/test/resources/symlinks/src/symW
@@ -0,0 +1 @@
+fileW.txt
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/symX b/src/test/resources/symlinks/src/symX
new file mode 120000
index 0000000..2d8a735
--- /dev/null
+++ b/src/test/resources/symlinks/src/symX
@@ -0,0 +1 @@
+fileX.txt
\ No newline at end of file
diff --git a/src/test/resources/symlinks/src/targetDir/targetFile.txt b/src/test/resources/symlinks/src/targetDir/targetFile.txt
new file mode 100644
index 0000000..1ded16b
--- /dev/null
+++ b/src/test/resources/symlinks/src/targetDir/targetFile.txt
@@ -0,0 +1 @@
+This is a target file
diff --git a/src/test/resources/symlinks/symlinks.tar b/src/test/resources/symlinks/symlinks.tar
new file mode 100644
index 0000000..c407060
--- /dev/null
+++ b/src/test/resources/symlinks/symlinks.tar
Binary files differ
diff --git a/src/test/resources/symlinks/symlinks.zip b/src/test/resources/symlinks/symlinks.zip
new file mode 100644
index 0000000..309a853
--- /dev/null
+++ b/src/test/resources/symlinks/symlinks.zip
Binary files differ