You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/04/06 10:59:49 UTC
[3/3] camel git commit: CAMEL-11113 added unit tests
CAMEL-11113 added unit tests
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d7f23195
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d7f23195
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d7f23195
Branch: refs/heads/master
Commit: d7f23195a4fe55d45b7125dbf1ecaa04043c5f08
Parents: 994bea0
Author: Zoran Regvart <zr...@apache.org>
Authored: Wed Apr 5 16:01:33 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Apr 6 12:59:05 2017 +0200
----------------------------------------------------------------------
.../camel/catalog/AbstractCamelCatalog.java | 2 +-
.../camel/catalog/AbstractCamelCatalogTest.java | 104 +++++++++++++++++++
.../camel/catalog/AbstractCamelCatalog.java | 2 +-
3 files changed, 106 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/d7f23195/camel-core/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java b/camel-core/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
index 6c1e3d4..7fd25c8 100644
--- a/camel-core/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
+++ b/camel-core/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
@@ -872,7 +872,7 @@ public abstract class AbstractCamelCatalog {
return doAsEndpointUri(scheme, properties, "&", encode);
}
- private String doAsEndpointUri(String scheme, Map<String, String> properties, String ampersand, boolean encode) throws URISyntaxException {
+ String doAsEndpointUri(String scheme, Map<String, String> properties, String ampersand, boolean encode) throws URISyntaxException {
String json = jsonSchemaResolver.getComponentJSonSchema(scheme);
if (json == null) {
throw new IllegalArgumentException("Cannot find endpoint with scheme " + scheme);
http://git-wip-us.apache.org/repos/asf/camel/blob/d7f23195/camel-core/src/test/java/org/apache/camel/catalog/AbstractCamelCatalogTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/catalog/AbstractCamelCatalogTest.java b/camel-core/src/test/java/org/apache/camel/catalog/AbstractCamelCatalogTest.java
new file mode 100644
index 0000000..ed7e997
--- /dev/null
+++ b/camel-core/src/test/java/org/apache/camel/catalog/AbstractCamelCatalogTest.java
@@ -0,0 +1,104 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.catalog;
+
+import java.net.URISyntaxException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.mock;
+import static org.easymock.EasyMock.replay;
+import static org.junit.Assert.assertEquals;
+
+public class AbstractCamelCatalogTest {
+
+ AbstractCamelCatalog catalog = new AbstractCamelCatalog() {
+ };
+
+ JSonSchemaResolver resolver;
+
+ @Before
+ public void setupMockCatalog() {
+ resolver = mock(JSonSchemaResolver.class);
+
+ catalog.setJSonSchemaResolver(resolver);
+ }
+
+ @Test
+ public void shouldConstructEndpointUris() throws URISyntaxException {
+ expect(resolver.getComponentJSonSchema("comp")).andReturn("{\n"//
+ + " \"component\": {\n"//
+ + " \"syntax\": \"comp:param1:param2\"\n"//
+ + " }\n"//
+ + "}");
+
+ replay(resolver);
+
+ final Map<String, String> properties = new HashMap<>();
+ properties.put("param1", "value1");
+ properties.put("param2", "value2");
+ properties.put("param3", "value3");
+
+ final String endpointUri = catalog.doAsEndpointUri("comp", properties, "&", false);
+
+ assertEquals("comp:value1:value2?param3=value3", endpointUri);
+ }
+
+ @Test
+ public void shouldConstructEndpointUrisWithPropertyPlaceholders() throws URISyntaxException {
+ expect(resolver.getComponentJSonSchema("comp")).andReturn("{\n"//
+ + " \"component\": {\n"//
+ + " \"syntax\": \"comp:param1:param2\"\n"//
+ + " }\n"//
+ + "}");
+
+ replay(resolver);
+
+ final Map<String, String> properties = new HashMap<>();
+ properties.put("param1", "{{prop1}}");
+ properties.put("param2", "{{prop2}}");
+ properties.put("param3", "{{prop3}}");
+
+ final String endpointUri = catalog.doAsEndpointUri("comp", properties, "&", false);
+
+ assertEquals("comp:{{prop1}}:{{prop2}}?param3={{prop3}}", endpointUri);
+ }
+
+ @Test
+ public void shouldConstructEndpointUrisWhenValuesContainTokens() throws URISyntaxException {
+ expect(resolver.getComponentJSonSchema("comp")).andReturn("{\n"//
+ + " \"component\": {\n"//
+ + " \"syntax\": \"comp:param1:param2\"\n"//
+ + " }\n"//
+ + "}");
+
+ replay(resolver);
+
+ final Map<String, String> properties = new HashMap<>();
+ properties.put("param1", "{value1}");
+ properties.put("param2", "/value2/");
+ properties.put("param3", "/value3/{param}");
+
+ final String endpointUri = catalog.doAsEndpointUri("comp", properties, "&", false);
+
+ assertEquals("comp:{value1}:/value2/?param3=/value3/{param}", endpointUri);
+ }
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/d7f23195/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
----------------------------------------------------------------------
diff --git a/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java b/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
index 6c1e3d4..7fd25c8 100644
--- a/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
+++ b/platforms/camel-catalog/src/main/java/org/apache/camel/catalog/AbstractCamelCatalog.java
@@ -872,7 +872,7 @@ public abstract class AbstractCamelCatalog {
return doAsEndpointUri(scheme, properties, "&", encode);
}
- private String doAsEndpointUri(String scheme, Map<String, String> properties, String ampersand, boolean encode) throws URISyntaxException {
+ String doAsEndpointUri(String scheme, Map<String, String> properties, String ampersand, boolean encode) throws URISyntaxException {
String json = jsonSchemaResolver.getComponentJSonSchema(scheme);
if (json == null) {
throw new IllegalArgumentException("Cannot find endpoint with scheme " + scheme);