You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2012/10/07 18:22:01 UTC

svn commit: r1395338 - /maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java

Author: rfscholte
Date: Sun Oct  7 16:22:01 2012
New Revision: 1395338

URL: http://svn.apache.org/viewvc?rev=1395338&view=rev
Log:
Add tests for relative file paths on Windows

Modified:
    maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java

Modified: maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java?rev=1395338&r1=1395337&r2=1395338&view=diff
==============================================================================
--- maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java (original)
+++ maven/shared/trunk/maven-shared-utils/src/test/java/org/apache/maven/shared/utils/PathToolTest.java Sun Oct  7 16:22:01 2012
@@ -79,7 +79,8 @@ public class PathToolTest extends Assert
     }
 
     @Test
-    public void testGetRelativeFilePath()
+    // Keep in sync with testGetRelativeFilePath_Windows()
+    public void testGetRelativeFilePath_NonWindows()
     {
         assertThat( PathTool.getRelativeFilePath( null, null )
                   , is( "" ) );
@@ -111,6 +112,41 @@ public class PathToolTest extends Assert
         assertThat( PathTool.getRelativeFilePath( "/bin", "/usr/local/" )
                   , is( "../usr/local/" ) );
     }
+    
+    @Test
+    // Keep in sync with testGetRelativeFilePath_NonWindows()
+    public void testGetRelativeFilePath_Windows()
+    {
+        assertThat( PathTool.getRelativeFilePath( null, null )
+                  , is( "" ) );
+
+        assertThat( PathTool.getRelativeFilePath( null, "c:\\usr\\local\\java\\bin" )
+                  , is( "" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local", null )
+                  , is( "" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local", "c:\\usr\\local\\java\\bin" )
+                  , is( "java\\bin" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local", "c:\\usr\\local\\java\\bin\\" )
+                  , is( "java\\bin\\" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local\\java\\bin", "c:\\usr\\local\\" )
+                  , is( "..\\..\\" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local\\", "c:\\usr\\local\\java\\bin\\java.sh" )
+                  , is( "java\\bin\\java.sh" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local\\java\\bin\\java.sh", "c:\\usr\\local\\" )
+                  , is( "..\\..\\..\\" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\usr\\local\\", "c:\\bin" )
+                  , is( "..\\..\\bin" ) );
+
+        assertThat( PathTool.getRelativeFilePath( "c:\\bin", "c:\\usr\\local\\" )
+                  , is( "..\\usr\\local\\" ) );
+    }
 
     @Test
     public void testGetRelativePath_2parm()