You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by st...@apache.org on 2014/11/08 23:30:09 UTC

[06/12] incubator-slider git commit: SLIDER-201 TestBuildBasicAgent to use proper URIs in paths

SLIDER-201 TestBuildBasicAgent to use proper URIs in paths


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

Branch: refs/heads/releases/slider-0.60
Commit: 58a6c6122da50e079148dc0dd7a2e862c01fdeda
Parents: b6a3b54
Author: Steve Loughran <st...@apache.org>
Authored: Fri Nov 7 17:47:43 2014 +0000
Committer: Steve Loughran <st...@apache.org>
Committed: Sat Nov 8 21:53:38 2014 +0000

----------------------------------------------------------------------
 .../providers/agent/AgentClientProvider.java    |  3 +-
 .../providers/agent/TestBuildBasicAgent.groovy  | 72 ++++++++++++--------
 2 files changed, 46 insertions(+), 29 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/58a6c612/slider-core/src/main/java/org/apache/slider/providers/agent/AgentClientProvider.java
----------------------------------------------------------------------
diff --git a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentClientProvider.java b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentClientProvider.java
index d7ae245..0ef8a33 100644
--- a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentClientProvider.java
+++ b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentClientProvider.java
@@ -45,6 +45,7 @@ import java.io.IOException;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
+import java.util.Locale;
 import java.util.Map;
 import java.util.Set;
 
@@ -131,7 +132,7 @@ public class AgentClientProvider extends AbstractClientProvider
         getGlobalOptions().getMandatoryOption(AgentKeys.APP_DEF);
     log.info("Validating app definition {}", appDef);
     String extension = appDef.substring(appDef.lastIndexOf(".") + 1, appDef.length());
-    if (!"zip".equalsIgnoreCase(extension)) {
+    if (!"zip".equals(extension.toLowerCase(Locale.ENGLISH))) {
       throw new BadConfigException("App definition must be packaged as a .zip file. File provided is " + appDef);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/58a6c612/slider-core/src/test/groovy/org/apache/slider/providers/agent/TestBuildBasicAgent.groovy
----------------------------------------------------------------------
diff --git a/slider-core/src/test/groovy/org/apache/slider/providers/agent/TestBuildBasicAgent.groovy b/slider-core/src/test/groovy/org/apache/slider/providers/agent/TestBuildBasicAgent.groovy
index 7e352e9..3f7a432 100644
--- a/slider-core/src/test/groovy/org/apache/slider/providers/agent/TestBuildBasicAgent.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/providers/agent/TestBuildBasicAgent.groovy
@@ -25,6 +25,7 @@ import org.apache.slider.api.InternalKeys
 import org.apache.slider.api.ResourceKeys
 import org.apache.slider.api.RoleKeys
 import org.apache.slider.client.SliderClient
+import org.apache.slider.common.SliderExitCodes
 import org.apache.slider.common.SliderKeys
 import org.apache.slider.core.conf.AggregateConf
 import org.apache.slider.core.exceptions.BadConfigException
@@ -54,17 +55,32 @@ class TestBuildBasicAgent extends AgentTestBase {
     return new File(app_def_pkg_path);
   }
 
+  private String getAppDefURI() {
+    appDef.toURI().toString()
+  }
+
   private File getBadAppDef() {
     return bad_app_def_path;
   }
 
+  private String getBadAppDefURI() {
+    badAppDef.toURI().toString()
+  }
+
   private File getAgentConf() {
     return agt_conf_path;
   }
 
+  private String getAgentConfURI() {
+    agentConf.toURI().toString()
+  }
+
   private File getAgentImg() {
     return new File(app_def_pkg_path);
   }
+  private String getAgentImgURI() {
+    agentImg.toURI().toString()
+  }
 
 
   @Test
@@ -83,8 +99,8 @@ class TestBuildBasicAgent extends AgentTestBase {
         [
             ARG_OPTION, CONTROLLER_URL, "http://localhost",
             ARG_PACKAGE, ".",
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_OPTION, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_COMP_OPT, ROLE_NODE, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_RES_COMP_OPT, ROLE_NODE, ResourceKeys.COMPONENT_PRIORITY, "1",
@@ -103,8 +119,8 @@ class TestBuildBasicAgent extends AgentTestBase {
         [
             ARG_OPTION, CONTROLLER_URL, "http://localhost",
             ARG_OPTION, PACKAGE_PATH, ".",
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_COMP_OPT, master, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_COMP_OPT, rs, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_RES_COMP_OPT, master, ResourceKeys.COMPONENT_PRIORITY, "2",
@@ -162,8 +178,8 @@ class TestBuildBasicAgent extends AgentTestBase {
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
               ARG_OPTION, PACKAGE_PATH, ".",
-              ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-              ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+              ARG_OPTION, APP_DEF, appDefURI,
+              ARG_OPTION, AGENT_CONF, agentConfURI,
               ARG_COMP_OPT, ROLE_NODE, SCRIPT_PATH, "agent/scripts/agent.py",
               ARG_RES_COMP_OPT, ROLE_NODE, ResourceKeys.COMPONENT_PRIORITY, "1",
           ],
@@ -205,8 +221,8 @@ class TestBuildBasicAgent extends AgentTestBase {
             (rs): 5
         ],
         [
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_PACKAGE, ".",
             ARG_COMP_OPT, SliderKeys.COMPONENT_AM, RoleKeys.JVM_OPTS, jvmopts,
             ARG_COMP_OPT, master, RoleKeys.JVM_OPTS, jvmopts,
@@ -235,8 +251,8 @@ class TestBuildBasicAgent extends AgentTestBase {
             "hbase-rs": 1,
         ],
         [
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_PACKAGE, ".",
             ARG_RES_COMP_OPT, "hbase-rs", ResourceKeys.COMPONENT_PRIORITY, "3",
         ],
@@ -261,7 +277,7 @@ class TestBuildBasicAgent extends AgentTestBase {
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
               ARG_PACKAGE, ".",
-              ARG_OPTION, APP_DEF, "file://" + appDef.absolutePath,
+              ARG_OPTION, APP_DEF, appDefURI,
               ARG_RESOURCES, TEST_FILES + "good/resources_with_label.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
           ],
@@ -320,8 +336,8 @@ class TestBuildBasicAgent extends AgentTestBase {
         [
             ARG_OPTION, CONTROLLER_URL, "http://localhost",
             ARG_OPTION, PACKAGE_PATH, ".",
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_COMP_OPT, master, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_COMP_OPT, rs, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_RES_COMP_OPT, master, ResourceKeys.COMPONENT_PRIORITY, "2",
@@ -359,8 +375,8 @@ class TestBuildBasicAgent extends AgentTestBase {
         [
             ARG_OPTION, CONTROLLER_URL, "http://localhost",
             ARG_OPTION, PACKAGE_PATH, ".",
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_COMP_OPT, master, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_COMP_OPT, rs, SCRIPT_PATH, "agent/scripts/agent.py",
             ARG_RES_COMP_OPT, master, ResourceKeys.COMPONENT_PRIORITY, "4",
@@ -416,7 +432,7 @@ class TestBuildBasicAgent extends AgentTestBase {
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
               ARG_PACKAGE, ".",
-              ARG_OPTION, APP_DEF, "file://" + appDef.absolutePath,
+              ARG_OPTION, APP_DEF, appDefURI,
               ARG_RESOURCES, TEST_FILES + "good/resources.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
           ],
@@ -447,7 +463,7 @@ class TestBuildBasicAgent extends AgentTestBase {
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
               ARG_PACKAGE, ".",
-              ARG_OPTION, APP_DEF, "file://" + appDef.absolutePath,
+              ARG_OPTION, APP_DEF, appDefURI,
               ARG_RESOURCES, TEST_FILES + "bad/resources-3.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
           ],
@@ -455,8 +471,8 @@ class TestBuildBasicAgent extends AgentTestBase {
           false)
       failWithBuildSucceeding(badArgs1, "bad component type node")
     } catch (BadConfigException expected) {
-      log.info("Expected failure.", expected)
-      assert expected.message.contains("Component node is not a member of application")
+      assertExceptionDetails(expected, SliderExitCodes.EXIT_BAD_CONFIGURATION,
+        "Component node is not a member of application")
     }
   }
 
@@ -477,7 +493,7 @@ class TestBuildBasicAgent extends AgentTestBase {
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
               ARG_PACKAGE, ".",
-              ARG_OPTION, APP_DEF, "file://" + appDef.absolutePath,
+              ARG_OPTION, APP_DEF, appDefURI,
               ARG_RESOURCES, TEST_FILES + "good/resources.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json",
               ARG_QUEUE, "labeled"
@@ -513,9 +529,9 @@ class TestBuildBasicAgent extends AgentTestBase {
           [:],
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
-              ARG_IMAGE, "file://" + getAgentImg().absolutePath,
-              ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-              ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+              ARG_IMAGE, agentImgURI,
+              ARG_OPTION, APP_DEF, appDefURI,
+              ARG_OPTION, AGENT_CONF, agentConfURI,
               ARG_RESOURCES, TEST_FILES + "good/resources.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
           ],
@@ -533,7 +549,7 @@ class TestBuildBasicAgent extends AgentTestBase {
           [:],
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
-              ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+              ARG_OPTION, AGENT_CONF, agentConfURI,
               ARG_PACKAGE, ".",
               ARG_RESOURCES, TEST_FILES + "good/resources.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
@@ -552,9 +568,9 @@ class TestBuildBasicAgent extends AgentTestBase {
           [:],
           [
               ARG_OPTION, CONTROLLER_URL, "http://localhost",
-              ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+              ARG_OPTION, AGENT_CONF, agentConfURI,
               ARG_PACKAGE, ".",
-              ARG_OPTION, APP_DEF, "file://" + getBadAppDef().absolutePath,
+              ARG_OPTION, APP_DEF, badAppDefURI,
               ARG_RESOURCES, TEST_FILES + "good/resources.json",
               ARG_TEMPLATE, TEST_FILES + "good/appconf.json"
           ],
@@ -582,8 +598,8 @@ class TestBuildBasicAgent extends AgentTestBase {
         [:],
         [
             ARG_OPTION, CONTROLLER_URL, "http://localhost",
-            ARG_OPTION, APP_DEF, "file://" + getAppDef().absolutePath,
-            ARG_OPTION, AGENT_CONF, "file://" + getAgentConf().absolutePath,
+            ARG_OPTION, APP_DEF, appDefURI,
+            ARG_OPTION, AGENT_CONF, agentConfURI,
             ARG_PACKAGE, ".",
             ARG_RESOURCES, TEST_FILES + "good/resources.json",
             ARG_TEMPLATE, TEST_FILES + "good/appconf.json"