This is an automated email from the ASF dual-hosted git repository.

heneveld pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git


The following commit(s) were added to refs/heads/master by this push:
     new fbec416  fixed test for multi-part, added necessary trim when 
multipart used
fbec416 is described below

commit fbec416dc064fdad2d35a635573bb80a14927785
Author: Alex Heneveld <[email protected]>
AuthorDate: Wed Jul 28 12:59:39 2021 +0100

    fixed test for multi-part, added necessary trim when multipart used
---
 .../apache/brooklyn/core/typereg/TypePlanTransformers.java    |  2 +-
 .../apache/brooklyn/rest/resources/ApplicationResource.java   |  1 +
 .../java/org/apache/brooklyn/rest/api/ApplicationApiTest.java | 11 ++++++++++-
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git 
a/core/src/main/java/org/apache/brooklyn/core/typereg/TypePlanTransformers.java 
b/core/src/main/java/org/apache/brooklyn/core/typereg/TypePlanTransformers.java
index 45e0d60..b710d23 100644
--- 
a/core/src/main/java/org/apache/brooklyn/core/typereg/TypePlanTransformers.java
+++ 
b/core/src/main/java/org/apache/brooklyn/core/typereg/TypePlanTransformers.java
@@ -156,7 +156,7 @@ public class TypePlanTransformers {
             result = failuresFromTransformers.size()==1 ? 
Exceptions.create(null, failuresFromTransformers) :
                 Exceptions.create("All applicable plan transformers failed", 
failuresFromTransformers);
         } else {
-            String prefix = Strings.isBlank(type.getPlan().getPlanFormat()) ? 
"Invalid plan" : "Invalid '"+type.getPlan().getPlanFormat()+"' plan]";
+            String prefix = Strings.isBlank(type.getPlan().getPlanFormat()) ? 
"Invalid plan" : "Invalid '"+type.getPlan().getPlanFormat()+"' plan";
             if (transformers.isEmpty()) {
                 result = new UnsupportedTypePlanException(prefix + "; format 
could not be recognized, none of the available transformers "+all(mgmt)+" 
support "+
                     (type.getId()!=null ? type.getId() : 
"plan:\n"+type.getPlan().getPlanData()));
diff --git 
a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ApplicationResource.java
 
b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ApplicationResource.java
index 1a95f5c..3b0d94a 100644
--- 
a/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ApplicationResource.java
+++ 
b/rest/rest-resources/src/main/java/org/apache/brooklyn/rest/resources/ApplicationResource.java
@@ -554,6 +554,7 @@ public class ApplicationResource extends 
AbstractBrooklynRestResource implements
     }
 
     public Response createWithFormat(String inputToAutodetectType, String 
format) {
+        if (format!=null) format = format.trim();
         log.debug("Creating app from autodetecting input");
 
         boolean looksLikeLegacy = false;
diff --git 
a/rest/rest-server/src/test/java/org/apache/brooklyn/rest/api/ApplicationApiTest.java
 
b/rest/rest-server/src/test/java/org/apache/brooklyn/rest/api/ApplicationApiTest.java
index 9bcd635..433ce1d 100644
--- 
a/rest/rest-server/src/test/java/org/apache/brooklyn/rest/api/ApplicationApiTest.java
+++ 
b/rest/rest-server/src/test/java/org/apache/brooklyn/rest/api/ApplicationApiTest.java
@@ -31,7 +31,16 @@ public class ApplicationApiTest extends 
BrooklynRestApiLauncherTestFixture {
     @Test(groups = "Integration")
     public void testMultipartFormWithInvalidChar() throws Exception {
         useServerForTest(newServer());
-        String body = 
"------WebKitFormBoundaryaQhM7RFMi4ZiXOj2\n\rContent-Disposition: form-data; 
services:\n\r- type: 
org.apache.brooklyn.entity.stock.BasicEntity\n\rbrooklyn.config:\n\rexample: 
$brooklyn:formatString(\"%s\", 
\"vault\")\n\r\n\r\n\r------WebKitFormBoundaryaQhM7RFMi4ZiXOj2\n\rContent-Disposition:
 form-data; 
name=\"format\"\n\r\n\rcamp\n\r------WebKitFormBoundaryaQhM7RFMi4ZiXOj2--\n\r";
+        String body = "------WebKitFormBoundaryaQhM7RFMi4ZiXOj2\n\r" +
+                "Content-Disposition: form-data; name=\"plan\"\n\r\n\r" +
+                "services:\n\r" +
+                "- type: org.apache.brooklyn.entity.stock.BasicEntity\n\r" +
+                "  brooklyn.config:\n\r" +
+                "    example: $brooklyn:formatString(\"%s\", 
\"vault\")\n\r\n\r\n\r" +
+                "------WebKitFormBoundaryaQhM7RFMi4ZiXOj2\n\r" +
+                "Content-Disposition: form-data; name=\"format\"\n\r\n\r" +
+                "brooklyn-camp\n\r" +
+                "------WebKitFormBoundaryaQhM7RFMi4ZiXOj2--\n\r";
         ImmutableMap<String, String> headers = ImmutableMap.of("Content-Type", 
"multipart/form-data; boundary=----WebKitFormBoundaryaQhM7RFMi4ZiXOj2");
         assertPostMultiPart("admin", "/v1/applications", body.getBytes(), 
headers);
     }

Reply via email to