Additional tests for Path.isAbsolute()

Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/23fe0062
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/23fe0062
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/23fe0062

Branch: refs/heads/master
Commit: 23fe00629e4b36e5c4d3849c2711743148369631
Parents: 2f683af
Author: Fabian Hueske <fhue...@apache.org>
Authored: Sat Apr 4 21:35:38 2015 +0200
Committer: Fabian Hueske <fhue...@apache.org>
Committed: Tue Apr 7 14:46:15 2015 +0200

----------------------------------------------------------------------
 .../java/org/apache/flink/core/fs/Path.java     |  5 +--
 .../java/org/apache/flink/core/fs/PathTest.java | 35 +++++++++++++++++---
 2 files changed, 32 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/23fe0062/flink-core/src/main/java/org/apache/flink/core/fs/Path.java
----------------------------------------------------------------------
diff --git a/flink-core/src/main/java/org/apache/flink/core/fs/Path.java 
b/flink-core/src/main/java/org/apache/flink/core/fs/Path.java
index 05bccd1..75155eb 100644
--- a/flink-core/src/main/java/org/apache/flink/core/fs/Path.java
+++ b/flink-core/src/main/java/org/apache/flink/core/fs/Path.java
@@ -312,10 +312,7 @@ public class Path implements IOReadableWritable, 
Serializable {
         */
        public boolean isAbsolute() {
                final int start = hasWindowsDrive(uri.getPath(), true) ? 3 : 0;
-               if (uri.getPath().length() > start) {
-                       return uri.getPath().startsWith(SEPARATOR, start);
-               }
-               return true;
+               return uri.getPath().startsWith(SEPARATOR, start);
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/flink/blob/23fe0062/flink-core/src/test/java/org/apache/flink/core/fs/PathTest.java
----------------------------------------------------------------------
diff --git a/flink-core/src/test/java/org/apache/flink/core/fs/PathTest.java 
b/flink-core/src/test/java/org/apache/flink/core/fs/PathTest.java
index e4c4e88..8fa2cea 100644
--- a/flink-core/src/test/java/org/apache/flink/core/fs/PathTest.java
+++ b/flink-core/src/test/java/org/apache/flink/core/fs/PathTest.java
@@ -69,9 +69,6 @@ public class PathTest {
                p = new Path("file:/C:/my/windows/path");
                assertEquals("/C:/my/windows/path", p.toUri().getPath());
 
-               p = new Path("C:");
-               assertEquals("/C:", p.toUri().getPath());
-
                try {
                        new Path((String)null);
                        fail();
@@ -98,21 +95,51 @@ public class PathTest {
        @Test
        public void testIsAbsolute() {
 
+               // UNIX
+
                Path p = new Path("/my/abs/path");
                assertTrue(p.isAbsolute());
 
+               p = new Path("/");
+               assertTrue(p.isAbsolute());
+
                p = new Path("./my/rel/path");
                assertFalse(p.isAbsolute());
 
+               p = new Path("my/rel/path");
+               assertFalse(p.isAbsolute());
+
+               // WINDOWS
+
                p = new Path("C:/my/abs/windows/path");
                assertTrue(p.isAbsolute());
 
-               p = new Path("file:/C:");
+               p = new Path("y:/my/abs/windows/path");
+               assertTrue(p.isAbsolute());
+
+               p = new Path("b:\\my\\abs\\windows\\path");
                assertTrue(p.isAbsolute());
 
                p = new Path("C:");
+               assertFalse(p.isAbsolute());
+
+               p = new Path("C:my\\relative\\path");
+               assertFalse(p.isAbsolute());
+
+               p = new Path("\\my\\dir");
+               assertTrue(p.isAbsolute());
+
+               p = new Path("\\");
                assertTrue(p.isAbsolute());
 
+               p = new Path(".\\my\\relative\\path");
+               assertFalse(p.isAbsolute());
+
+               p = new Path("my\\relative\\path");
+               assertFalse(p.isAbsolute());
+
+               p = new Path("\\\\myServer\\myDir");
+               assertTrue(p.isAbsolute());
        }
 
        @Test

Reply via email to