You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ba...@apache.org on 2008/09/17 06:27:35 UTC

svn commit: r696147 - in /maven/plugins/trunk/maven-eclipse-plugin/src: main/java/org/apache/maven/plugin/eclipse/ test/java/org/apache/maven/plugin/eclipse/ test/java/org/apache/maven/plugin/ide/

Author: baerrach
Date: Tue Sep 16 21:27:35 2008
New Revision: 696147

URL: http://svn.apache.org/viewvc?rev=696147&view=rev
Log:
[MECLIPSE-206] adding unit tests for IdeUtils.toRelativeAndFixSeparator on windows.

removed MavenProject from extractResourceDirs() as parameter never used.

In EclipsePluginUnitTest changed assertTrue()s with path.endWith() to be assertEquals as we know what the correct values should be.

In IdeUtilsTest added two tests for windows file paths.  One for files on different drives with absolute paths and one for files on different drives and relative paths.

Modified:
    maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
    maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginUnitTest.java
    maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/ide/IdeUtilsTest.java

Modified: maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java?rev=696147&r1=696146&r2=696147&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/EclipsePlugin.java Tue Sep 16 21:27:35 2008
@@ -1372,16 +1372,16 @@
 
         extractSourceDirs( mainDirectories, project.getCompileSourceRoots(), basedir, projectBaseDir, false, null );
 
-        extractResourceDirs( mainDirectories, project.getBuild().getResources(), project, basedir, projectBaseDir,
-                             false, mainOutput );
+        extractResourceDirs( mainDirectories, project.getBuild().getResources(), basedir, projectBaseDir, false,
+                             mainOutput );
 
         Set testDirectories = new LinkedHashSet();
 
         extractSourceDirs( testDirectories, project.getTestCompileSourceRoots(), basedir, projectBaseDir, true,
                            testOutput );
 
-        extractResourceDirs( testDirectories, project.getBuild().getTestResources(), project, basedir, projectBaseDir,
-                             true, testOutput );
+        extractResourceDirs( testDirectories, project.getBuild().getTestResources(), basedir, projectBaseDir, true,
+                             testOutput );
 
         // avoid duplicated entries
         Set directories = new LinkedHashSet();
@@ -1425,8 +1425,8 @@
         }
     }
 
-    void extractResourceDirs( Set directories, List resources, MavenProject project, File basedir,
-                              File workspaceProjectBaseDir, boolean test, final String output )
+    void extractResourceDirs( Set directories, List resources, File basedir, File workspaceProjectBaseDir,
+                              boolean test, final String output )
         throws MojoExecutionException
     {
         for ( Iterator it = resources.iterator(); it.hasNext(); )

Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginUnitTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginUnitTest.java?rev=696147&r1=696146&r2=696147&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginUnitTest.java (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/eclipse/EclipsePluginUnitTest.java Tue Sep 16 21:27:35 2008
@@ -93,7 +93,7 @@
 
         String path = result[0].getOutput();
 
-        assertTrue( "output directory should end with: " + resOutput, path.endsWith( resOutput ) );
+        assertEquals( resOutput, path );
     }
 
     public void testExtractResourceDirs_ShouldUseResourceOutput()
@@ -124,7 +124,7 @@
 
         EclipsePlugin plugin = newMojo();
 
-        plugin.extractResourceDirs( result, project.getBuild().getResources(), project, basedir, basedir, false,
+        plugin.extractResourceDirs( result, project.getBuild().getResources(), basedir, basedir, false,
                                     "target/classes" );
 
         Iterator resultIter = result.iterator();
@@ -135,8 +135,7 @@
 
         String prefix = "target/classes/";
 
-        assertTrue( "output directory should end with: " + prefix + resOutput + "\nWas: " + path, path.endsWith( prefix
-            + resOutput ) );
+        assertEquals( prefix + resOutput, path );
     }
 
     public void testExtractResourceDirs_ShouldUseSpecifiedOutputDirectory()
@@ -166,8 +165,7 @@
 
         EclipsePlugin plugin = newMojo();
 
-        plugin.extractResourceDirs( result, project.getBuild().getTestResources(), project, basedir, basedir, false,
-                                    resOutput );
+        plugin.extractResourceDirs( result, project.getBuild().getTestResources(), basedir, basedir, false, resOutput );
 
         Iterator resultIter = result.iterator();
 
@@ -175,7 +173,7 @@
 
         String path = ( (EclipseSourceDir) resultIter.next() ).getOutput();
 
-        assertTrue( "output directory should end with: " + resOutput, path.endsWith( resOutput ) );
+        assertEquals( resOutput, path );
     }
 
     public void testExtractResourceDirs_ShouldIncludeMainAndTestResources()
@@ -225,8 +223,8 @@
 
         EclipsePlugin plugin = newMojo();
 
-        plugin.extractResourceDirs( result, project.getBuild().getResources(), project, basedir,
-                                    workspaceProjectBasedir, false, "target/classes" );
+        plugin.extractResourceDirs( result, project.getBuild().getResources(), basedir, workspaceProjectBasedir, false,
+                                    "target/classes" );
 
         Iterator resultIter = result.iterator();
 
@@ -234,19 +232,14 @@
 
         String path = ( (EclipseSourceDir) resultIter.next() ).getPath();
 
-        if ( basedir.equals( workspaceProjectBasedir ) )
-        {
-            assertTrue( "resource dir path: " + path + " does not end with: " + resDir, path.endsWith( resDir ) );
-        }
-        else
+        if ( !basedir.equals( workspaceProjectBasedir ) )
         {
             resDir = resDir.replace( '\\', '/' ).replace( '/', '-' );
-
-            assertTrue( "resource dir path: " + path + " does not end with: " + resDir, path.endsWith( resDir ) );
         }
+        assertEquals( resDir, path );
 
-        plugin.extractResourceDirs( result, project.getBuild().getTestResources(), project, basedir,
-                                    workspaceProjectBasedir, false, "target/test-classes" );
+        plugin.extractResourceDirs( result, project.getBuild().getTestResources(), basedir, workspaceProjectBasedir,
+                                    false, "target/test-classes" );
 
         resultIter = result.iterator();
         resultIter.next();
@@ -255,18 +248,10 @@
 
         path = ( (EclipseSourceDir) resultIter.next() ).getPath();
 
-        if ( basedir.equals( workspaceProjectBasedir ) )
-        {
-            assertTrue( "test-resource dir path: " + path + " does not end with: " + testResDir,
-                        path.endsWith( testResDir ) );
-        }
-        else
+        if ( !basedir.equals( workspaceProjectBasedir ) )
         {
             testResDir = testResDir.replace( '\\', '/' ).replace( '/', '-' );
-
-            assertTrue( "test-resource dir path: " + path + " does not end with: " + testResDir,
-                        path.endsWith( testResDir ) );
         }
-
+        assertEquals( testResDir, path );
     }
 }

Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/ide/IdeUtilsTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/ide/IdeUtilsTest.java?rev=696147&r1=696146&r2=696147&view=diff
==============================================================================
--- maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/ide/IdeUtilsTest.java (original)
+++ maven/plugins/trunk/maven-eclipse-plugin/src/test/java/org/apache/maven/plugin/ide/IdeUtilsTest.java Tue Sep 16 21:27:35 2008
@@ -18,6 +18,8 @@
  */
 package org.apache.maven.plugin.ide;
 
+import java.io.File;
+
 import junit.framework.TestCase;
 
 /**
@@ -49,5 +51,41 @@
         name = IdeUtils.getProjectName( IdeUtils.PROJECT_NAME_WITH_VERSION_TEMPLATE, dependency );
         assertEquals( dependency.getArtifactId() + "-" + dependency.getVersion(), name );
     }
+    
+    /**
+     * When the file to add is on a different drive and an absolute path expect
+     * that the returned value is the same as the file to add (but with /s) 
+     * 
+     * @throws Exception
+     */
+    public void testToRelativeAndFixSeparator_WhereOnDifferentDrivesAndAbsolutePaths()
+        throws Exception
+    {
+        File basedir = new File( "C:\\TEMP\\EclipsePlugin.unitTest.1165557188766\\" );
+        File fileToAdd = new File( "D:\\ide\\workspace\\maven\\maven-eclipse-plugin\\target\\main-output" );
+
+        String actual = IdeUtils.toRelativeAndFixSeparator( basedir, fileToAdd, false );
+        String expected = "D:/ide/workspace/maven/maven-eclipse-plugin/target/main-output";
+
+        assertEquals( actual, expected );
+    }
+
+    /**
+     * When the file to add is a relative file then expect the result to be
+     * relative to the basedir (not whatever the current processes basedir is set to)
+     * 
+     * @throws Exception
+     */
+    public void testToRelativeAndFixSeparator_WhereOnDifferentDrivesAndFileToAddRelative()
+        throws Exception
+    {
+        File basedir = new File( "C:\\TEMP\\EclipsePlugin.unitTest.1165557188766\\" );
+        File fileToAdd = new File( "target/main-output" );
+
+        String actual = IdeUtils.toRelativeAndFixSeparator( basedir, fileToAdd, false );
+        String expected = "target/main-output";
+
+        assertEquals( actual, expected );
+    }    
 
 }