This is an automated email from the ASF dual-hosted git repository. gnodet pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit 54f092d67c88b03b5cfb5002d673d90c9737e1b6 Author: Guillaume Nodet <[email protected]> AuthorDate: Mon Jan 27 15:15:38 2020 +0100 [CAMEL-14437] Fix unit tests # Conflicts: # core/camel-core-engine/src/main/schema/xpath.json # core/camel-main/src/main/resources/META-INF/camel-main-configuration-metadata.json --- .../component/file/FileProducerChmodOptionTest.java | 2 +- .../runtimecatalog/impl/JSonSchemaHelperTest.java | 21 ++++++++++----------- .../org/apache/camel/support/JSonSchemaHelper.java | 7 ++----- .../tools/apt/EndpointAnnotationProcessor.java | 9 +++++---- .../tools/apt/EndpointOptionComparatorTest.java | 1 - .../org/apache/camel/tooling/model/JsonMapper.java | 6 ++++-- 6 files changed, 22 insertions(+), 24 deletions(-) diff --git a/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java b/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java index b94c9cf..c053576 100644 --- a/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java +++ b/core/camel-core/src/test/java/org/apache/camel/component/file/FileProducerChmodOptionTest.java @@ -105,7 +105,7 @@ public class FileProducerChmodOptionTest extends ContextTestSupport { PropertyBindingException pbe = assertIsInstanceOf(PropertyBindingException.class, e.getCause().getCause()); assertEquals("chmod", pbe.getPropertyName()); IllegalArgumentException iae = assertIsInstanceOf(IllegalArgumentException.class, pbe.getCause()); - assertEquals("chmod option [abc] is not valid", iae.getMessage()); + assertEquals("Could not find a suitable setter for property: chmod as there isn't a setter method with same type: java.lang.String nor type conversion possible: chmod option [abc] is not valid", iae.getMessage()); } } diff --git a/core/camel-core/src/test/java/org/apache/camel/runtimecatalog/impl/JSonSchemaHelperTest.java b/core/camel-core/src/test/java/org/apache/camel/runtimecatalog/impl/JSonSchemaHelperTest.java index c5ff179..4367ab2 100644 --- a/core/camel-core/src/test/java/org/apache/camel/runtimecatalog/impl/JSonSchemaHelperTest.java +++ b/core/camel-core/src/test/java/org/apache/camel/runtimecatalog/impl/JSonSchemaHelperTest.java @@ -32,7 +32,7 @@ public class JSonSchemaHelperTest extends ContextTestSupport { assertNotNull(json); List<Map<String, String>> rows = JSonSchemaHelper.parseJsonSchema("component", json, false); - assertEquals(17, rows.size()); + assertEquals(16, rows.size()); // should preserve order assertEquals("kind", rows.get(0).keySet().iterator().next()); @@ -42,16 +42,15 @@ public class JSonSchemaHelperTest extends ContextTestSupport { assertEquals("description", rows.get(4).keySet().iterator().next()); assertEquals("label", rows.get(5).keySet().iterator().next()); assertEquals("deprecated", rows.get(6).keySet().iterator().next()); - assertEquals("deprecationNote", rows.get(7).keySet().iterator().next()); - assertEquals("async", rows.get(8).keySet().iterator().next()); - assertEquals("consumerOnly", rows.get(9).keySet().iterator().next()); - assertEquals("producerOnly", rows.get(10).keySet().iterator().next()); - assertEquals("lenientProperties", rows.get(11).keySet().iterator().next()); - assertEquals("javaType", rows.get(12).keySet().iterator().next()); - assertEquals("firstVersion", rows.get(13).keySet().iterator().next()); - assertEquals("groupId", rows.get(14).keySet().iterator().next()); - assertEquals("artifactId", rows.get(15).keySet().iterator().next()); - assertEquals("version", rows.get(16).keySet().iterator().next()); + assertEquals("async", rows.get(7).keySet().iterator().next()); + assertEquals("consumerOnly", rows.get(8).keySet().iterator().next()); + assertEquals("producerOnly", rows.get(9).keySet().iterator().next()); + assertEquals("lenientProperties", rows.get(10).keySet().iterator().next()); + assertEquals("javaType", rows.get(11).keySet().iterator().next()); + assertEquals("firstVersion", rows.get(12).keySet().iterator().next()); + assertEquals("groupId", rows.get(13).keySet().iterator().next()); + assertEquals("artifactId", rows.get(14).keySet().iterator().next()); + assertEquals("version", rows.get(15).keySet().iterator().next()); rows = JSonSchemaHelper.parseJsonSchema("properties", json, true); assertEquals(8, rows.size()); diff --git a/core/camel-support/src/main/java/org/apache/camel/support/JSonSchemaHelper.java b/core/camel-support/src/main/java/org/apache/camel/support/JSonSchemaHelper.java index aa281ca..bf54fef 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/JSonSchemaHelper.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/JSonSchemaHelper.java @@ -427,13 +427,10 @@ public final class JSonSchemaHelper { public static String stripOptionalPrefixFromName(List<Map<String, String>> rows, String name) { for (Map<String, String> row : rows) { - String optionalPrefix = null; boolean found = false; - if (row.containsKey("optionalPrefix")) { - optionalPrefix = row.get("optionalPrefix"); - } if (row.containsKey("name")) { - if (optionalPrefix != null && name.startsWith(optionalPrefix)) { + String optionalPrefix = row.get("optionalPrefix"); + if (optionalPrefix != null && !optionalPrefix.isEmpty() && name.startsWith(optionalPrefix)) { name = name.substring(optionalPrefix.length()); // try again return stripOptionalPrefixFromName(rows, name); diff --git a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java index 8a76626..ac9e079 100644 --- a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java +++ b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java @@ -129,12 +129,13 @@ public class EndpointAnnotationProcessor extends AbstractCamelAnnotationProcesso protected void writeJSonSchemeAndPropertyConfigurer(PrintWriter writer, RoundEnvironment roundEnv, TypeElement classElement, UriEndpoint uriEndpoint, String title, String scheme, String extendsScheme, String label, String[] schemes) { + String parentScheme = isNullOrEmpty(extendsScheme) ? null : extendsScheme; + // gather component information - ComponentModel componentModel = findComponentProperties(roundEnv, uriEndpoint, classElement, title, scheme, extendsScheme, label, schemes); + ComponentModel componentModel = findComponentProperties(roundEnv, uriEndpoint, classElement, title, scheme, parentScheme, label, schemes); // get endpoint information which is divided into paths and options (though there should really only be one path) ComponentModel parentData = null; - String parentScheme = isNullOrEmpty(extendsScheme) ? null : extendsScheme; TypeMirror superclass = classElement.getSuperclass(); if (superclass != null) { String superClassName = Strings.canonicalClassName(superclass.toString()); @@ -267,11 +268,11 @@ public class EndpointAnnotationProcessor extends AbstractCamelAnnotationProcesso String fqClassName = packageName + "." + className; if ("activemq".equals(scheme) || "amqp".equals(scheme)) { - generateExtendConfigurer(processingEnv, parent, packageName, className, fqClassName, componentModel.getScheme() + "-component"); + generateExtendConfigurer(processingEnv, parent, packageName, className, fqClassName, componentModel.getScheme()); } else if (uriEndpoint.generateConfigurer() && !componentModel.getComponentOptions().isEmpty()) { // only generate this once for the first scheme if (schemes == null || schemes[0].equals(scheme)) { - generatePropertyConfigurer(processingEnv, parent, packageName, className, fqClassName, componentClassName, componentModel.getScheme() + "-component", componentModel.getComponentOptions()); + generatePropertyConfigurer(processingEnv, parent, packageName, className, fqClassName, componentClassName, componentModel.getScheme(), componentModel.getComponentOptions()); } } } diff --git a/tooling/apt/src/test/java/org/apache/camel/tools/apt/EndpointOptionComparatorTest.java b/tooling/apt/src/test/java/org/apache/camel/tools/apt/EndpointOptionComparatorTest.java index a8cf305..3de17ff 100644 --- a/tooling/apt/src/test/java/org/apache/camel/tools/apt/EndpointOptionComparatorTest.java +++ b/tooling/apt/src/test/java/org/apache/camel/tools/apt/EndpointOptionComparatorTest.java @@ -21,7 +21,6 @@ import java.util.List; import org.apache.camel.tooling.model.BaseOptionModel; import org.apache.camel.tools.apt.helper.EndpointHelper; -import org.junit.Test; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; diff --git a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java index 5665758..f8d617d 100644 --- a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java +++ b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java @@ -379,8 +379,8 @@ public class JsonMapper { prop.put("required", option.isRequired()); prop.put("type", option.getType()); prop.put("javaType", option.getJavaType()); - prop.put("enums", option.getEnums()); - prop.put("oneOfs", option.getOneOfs()); + prop.put("enum", option.getEnums()); + prop.put("oneOf", option.getOneOfs()); prop.put("prefix", option.getPrefix()); prop.put("optionalPrefix", option.getOptionalPrefix()); prop.put("multiValue", option.isMultiValue()); @@ -393,6 +393,8 @@ public class JsonMapper { prop.put("configurationField", option.getConfigurationField()); prop.put("description", option.getDescription()); prop.entrySet().removeIf(e -> e.getValue() == null); + prop.remove("prefix", ""); + prop.remove("optionalPrefix", ""); prop.remove("multiValue", Boolean.FALSE); prop.remove("asPredicate", Boolean.FALSE); return prop;
