SLIDER-352 more testing of windows

Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/53457d98
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/53457d98
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/53457d98

Branch: refs/heads/develop
Commit: 53457d98d480e3b4134175c09b4927d0c1dfb4ef
Parents: db2d298
Author: Steve Loughran <ste...@apache.org>
Authored: Fri Aug 22 16:20:26 2014 +0100
Committer: Steve Loughran <ste...@apache.org>
Committed: Fri Aug 22 16:20:26 2014 +0100

----------------------------------------------------------------------
 .../apache/slider/providers/agent/AgentUtils.java    |  9 +++++++--
 .../slider/common/tools/TestWindowsSupport.groovy    | 15 +++++++++++++--
 2 files changed, 20 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/53457d98/slider-core/src/main/java/org/apache/slider/providers/agent/AgentUtils.java
----------------------------------------------------------------------
diff --git 
a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentUtils.java 
b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentUtils.java
index f296a95..f329756 100644
--- 
a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentUtils.java
+++ 
b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentUtils.java
@@ -16,6 +16,7 @@
  */
 package org.apache.slider.providers.agent;
 
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.slider.common.tools.SliderFileSystem;
 import org.apache.slider.common.tools.SliderUtils;
@@ -24,6 +25,7 @@ import 
org.apache.slider.providers.agent.application.metadata.MetainfoParser;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 
@@ -36,11 +38,14 @@ public class AgentUtils {
   static Metainfo getApplicationMetainfo(SliderFileSystem fileSystem,
                                             String appDef) throws IOException {
     log.info("Reading metainfo at {}", appDef);
+    FileSystem fs = fileSystem.getFileSystem();
+    Path appPath = new Path(appDef);
     InputStream metainfoStream = SliderUtils.getApplicationResourceInputStream(
-        fileSystem.getFileSystem(), new Path(appDef), "metainfo.xml");
+        fs, appPath, "metainfo.xml");
     if (metainfoStream == null) {
       log.error("metainfo.xml is unavailable at {}.", appDef);
-      throw new IOException("metainfo.xml is required in app package.");
+      throw new FileNotFoundException("metainfo.xml is required in app 
package. " +
+                            appPath);
     }
 
     Metainfo metainfo = new MetainfoParser().parse(metainfoStream);

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/53457d98/slider-core/src/test/groovy/org/apache/slider/common/tools/TestWindowsSupport.groovy
----------------------------------------------------------------------
diff --git 
a/slider-core/src/test/groovy/org/apache/slider/common/tools/TestWindowsSupport.groovy
 
b/slider-core/src/test/groovy/org/apache/slider/common/tools/TestWindowsSupport.groovy
index 8387237..2d74760 100644
--- 
a/slider-core/src/test/groovy/org/apache/slider/common/tools/TestWindowsSupport.groovy
+++ 
b/slider-core/src/test/groovy/org/apache/slider/common/tools/TestWindowsSupport.groovy
@@ -22,6 +22,7 @@ import groovy.transform.CompileStatic
 import groovy.util.logging.Slf4j
 import org.apache.hadoop.conf.Configuration
 import org.apache.hadoop.fs.ChecksumFileSystem
+import org.apache.hadoop.fs.FSDataInputStream
 import org.apache.hadoop.fs.Path
 import org.apache.hadoop.fs.FileSystem as HadoopFS
 import org.apache.hadoop.util.Shell
@@ -75,7 +76,17 @@ class TestWindowsSupport extends SliderTestUtils {
 
     def localfs = HadoopFS.get(uri, conf)
     assert localfs instanceof ChecksumFileSystem
-    def stat = localfs.getFileStatus(path)
-    
+    try {
+      def stat = localfs.getFileStatus(path)
+      fail("expected an exception, got $stat")
+    } catch (FileNotFoundException fnfe) {
+      // expected
+    }
+
+    try {
+      FSDataInputStream appStream = localfs.open(path);
+    } catch (FileNotFoundException fnfe) {
+      // expected
+    }
   }
 }

Reply via email to