summaryrefslogtreecommitdiffstats
path: root/restapi-call-node
diff options
context:
space:
mode:
authorGaurav Agrawal <gaurav.agrawal@huawei.com>2017-09-28 15:20:37 +0530
committerGaurav Agrawal <gaurav.agrawal@huawei.com>2017-09-28 15:20:37 +0530
commit59f762556c4cecf8f59e780f6dd5072d85ccabfe (patch)
treecb6c4113d6d319406f2112551ae0a11572515f78 /restapi-call-node
parent436a09706a437edae6518ddf67edb4e40daa8053 (diff)
Added l2-dci json template and updated l3-dci
Following changes are included: 1) Added l2-dci template 2) Updated l3-dci template to handle paramaters generically for l2 and l3 3) Leaf-List handling 4) Added testcases for l2 and l3 template. Change-Id: I3142ae35286ea3c55927bedf5a071aaff5b15401 Issue-Id: SDNC-103 Signed-off-by: Gaurav Agrawal <gaurav.agrawal@huawei.com>
Diffstat (limited to 'restapi-call-node')
-rw-r--r--restapi-call-node/provider/src/main/resources/l2-dci-connects-template.json29
-rw-r--r--restapi-call-node/provider/src/main/resources/l3-dci-connects-template.json16
-rw-r--r--restapi-call-node/provider/src/test/java/jtest/org/onap/ccsdk/sli/plugins/restapicall/TestRestapiCallNode.java57
-rw-r--r--restapi-call-node/provider/src/test/resources/l2-dci-connects-template.json29
-rw-r--r--restapi-call-node/provider/src/test/resources/l3-dci-connects-template.json34
5 files changed, 156 insertions, 9 deletions
diff --git a/restapi-call-node/provider/src/main/resources/l2-dci-connects-template.json b/restapi-call-node/provider/src/main/resources/l2-dci-connects-template.json
new file mode 100644
index 000000000..f18075686
--- /dev/null
+++ b/restapi-call-node/provider/src/main/resources/l2-dci-connects-template.json
@@ -0,0 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : SDN-C
+ * ================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+{
+ "l2-dci-connect": {
+ "id": ${prop.dci-connects.id},
+ "name": ${prop.dci-connects.name},
+ "description": ${prop.dci-connects.description},
+ "network_id": ${prop.dci-connects.local_networks[0]},
+ "evpn_irts": ${prop.dci-connects.evpn_irts},
+ "evpn_erts": ${prop.dci-connects.evpn_erts},
+ "vni": ${prop.dci-connects.vni}
+ }
+}
diff --git a/restapi-call-node/provider/src/main/resources/l3-dci-connects-template.json b/restapi-call-node/provider/src/main/resources/l3-dci-connects-template.json
index 3f0e20304..c011b077b 100644
--- a/restapi-call-node/provider/src/main/resources/l3-dci-connects-template.json
+++ b/restapi-call-node/provider/src/main/resources/l3-dci-connects-template.json
@@ -20,15 +20,15 @@
{
"l3-dci-connect": {
- "id": "${prop.l3-dci-connects.id}",
- "name": "${prop.l3-dci-connects.name}",
- "description": "${prop.l3-dci-connects.description}",
- "router_id": "${prop.l3-dci-connects.router_id}",
+ "id": ${prop.dci-connects.id},
+ "name": ${prop.dci-connects.name},
+ "description": ${prop.dci-connects.description},
+ "router_id": ${prop.dci-connects.router_id},
"firewall_enable": false,
- "local_networks": ["${prop.l3-dci-connects.local_networks}"],
+ "local_networks": ${prop.dci-connects.local_networks},
"local_network_all": false,
- "evpn_irts": ["${prop.l3-dci-connects.evpn_irts}"],
- "evpn_erts": ["${prop.l3-dci-connects.evpn_erts}"],
- "l3_vni": "${prop.l3-dci-connects.l3_vni}"
+ "evpn_irts": ${prop.dci-connects.evpn_irts},
+ "evpn_erts": ${prop.dci-connects.evpn_erts},
+ "l3_vni": ${prop.dci-connects.vni}
}
}
diff --git a/restapi-call-node/provider/src/test/java/jtest/org/onap/ccsdk/sli/plugins/restapicall/TestRestapiCallNode.java b/restapi-call-node/provider/src/test/java/jtest/org/onap/ccsdk/sli/plugins/restapicall/TestRestapiCallNode.java
index 2d3b40105..1dcc97bca 100644
--- a/restapi-call-node/provider/src/test/java/jtest/org/onap/ccsdk/sli/plugins/restapicall/TestRestapiCallNode.java
+++ b/restapi-call-node/provider/src/test/java/jtest/org/onap/ccsdk/sli/plugins/restapicall/TestRestapiCallNode.java
@@ -23,7 +23,6 @@ package jtest.org.onap.ccsdk.sli.plugins.restapicall;
import java.util.HashMap;
import java.util.Map;
-
import org.junit.Test;
import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
import org.onap.ccsdk.sli.core.sli.SvcLogicException;
@@ -255,4 +254,60 @@ public class TestRestapiCallNode {
RestapiCallNode rcn = new RestapiCallNode();
rcn.sendRequest(p, ctx);
}
+
+ @Test
+ public void testL2DciTemplate() throws SvcLogicException {
+ SvcLogicContext ctx = new SvcLogicContext();
+ ctx.setAttribute("prop.dci-connects.id", "Id1");
+ ctx.setAttribute("prop.dci-connects.name", "Name1");
+ ctx.setAttribute("prop.dci-connects.local_networks[0]", "NetId1");
+ ctx.setAttribute("prop.dci-connects.local_networks[1]", "NetId2");
+ ctx.setAttribute("prop.dci-connects.evpn_irts[0]", "100:1");
+ ctx.setAttribute("prop.dci-connects.evpn_erts[0]", "100:2");
+ ctx.setAttribute("prop.dci-connects.evpn_irts[1]", "200:1");
+ ctx.setAttribute("prop.dci-connects.evpn_erts[1]", "200:2");
+ ctx.setAttribute("prop.dci-connects.vni", "1");
+
+ Map<String, String> p = new HashMap<String, String>();
+ p.put("templateFileName", "src/test/resources/l2-dci-connects-template.json");
+ p.put("restapiUrl", "http://echo.getpostman.com");
+ p.put("restapiUser", "user1");
+ p.put("restapiPassword", "abc123");
+ p.put("format", "json");
+ p.put("httpMethod", "post");
+ p.put("responsePrefix", "response");
+ p.put("skipSending", "true");
+
+ RestapiCallNode rcn = new RestapiCallNode();
+ rcn.sendRequest(p, ctx);
+ }
+
+ @Test
+ public void testL3DciTemplate() throws SvcLogicException {
+ SvcLogicContext ctx = new SvcLogicContext();
+ ctx.setAttribute("prop.dci-connects.id", "Id1");
+ ctx.setAttribute("prop.dci-connects.name", "Name1");
+ ctx.setAttribute("prop.dci-connects.local_networks_length", "2");
+ ctx.setAttribute("prop.dci-connects.local_networks[0]", "NetId1");
+ ctx.setAttribute("prop.dci-connects.local_networks[1]", "NetId2");
+ ctx.setAttribute("prop.dci-connects.evpn_irts[0]", "100:1");
+ ctx.setAttribute("prop.dci-connects.evpn_erts[0]", "100:2");
+ ctx.setAttribute("prop.dci-connects.evpn_irts[1]", "200:1");
+ ctx.setAttribute("prop.dci-connects.evpn_erts[1]", "200:2");
+ ctx.setAttribute("prop.dci-connects.vni", "1");
+
+ Map<String, String> p = new HashMap<String, String>();
+ p.put("templateFileName", "src/test/resources/l3-dci-connects-template.json");
+ p.put("restapiUrl", "http://echo.getpostman.com");
+ p.put("restapiUser", "user1");
+ p.put("restapiPassword", "abc123");
+ p.put("format", "json");
+ p.put("httpMethod", "post");
+ p.put("responsePrefix", "response");
+ p.put("skipSending", "true");
+
+ RestapiCallNode rcn = new RestapiCallNode();
+ rcn.sendRequest(p, ctx);
+
+ }
}
diff --git a/restapi-call-node/provider/src/test/resources/l2-dci-connects-template.json b/restapi-call-node/provider/src/test/resources/l2-dci-connects-template.json
new file mode 100644
index 000000000..f18075686
--- /dev/null
+++ b/restapi-call-node/provider/src/test/resources/l2-dci-connects-template.json
@@ -0,0 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : SDN-C
+ * ================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+{
+ "l2-dci-connect": {
+ "id": ${prop.dci-connects.id},
+ "name": ${prop.dci-connects.name},
+ "description": ${prop.dci-connects.description},
+ "network_id": ${prop.dci-connects.local_networks[0]},
+ "evpn_irts": ${prop.dci-connects.evpn_irts},
+ "evpn_erts": ${prop.dci-connects.evpn_erts},
+ "vni": ${prop.dci-connects.vni}
+ }
+}
diff --git a/restapi-call-node/provider/src/test/resources/l3-dci-connects-template.json b/restapi-call-node/provider/src/test/resources/l3-dci-connects-template.json
new file mode 100644
index 000000000..c011b077b
--- /dev/null
+++ b/restapi-call-node/provider/src/test/resources/l3-dci-connects-template.json
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : SDN-C
+ * ================================================================================
+ * Copyright (C) 2017 Intel Corp. All rights reserved.
+ * ================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+{
+ "l3-dci-connect": {
+ "id": ${prop.dci-connects.id},
+ "name": ${prop.dci-connects.name},
+ "description": ${prop.dci-connects.description},
+ "router_id": ${prop.dci-connects.router_id},
+ "firewall_enable": false,
+ "local_networks": ${prop.dci-connects.local_networks},
+ "local_network_all": false,
+ "evpn_irts": ${prop.dci-connects.evpn_irts},
+ "evpn_erts": ${prop.dci-connects.evpn_erts},
+ "l3_vni": ${prop.dci-connects.vni}
+ }
+}