summaryrefslogtreecommitdiffstats
path: root/sdnr/wt/data-provider/provider/src/test/java
diff options
context:
space:
mode:
authorMichael DÜrre <michael.duerre@highstreet-technologies.com>2021-04-09 08:01:19 +0200
committerMichael D�rre <michael.duerre@highstreet-technologies.com>2021-04-13 18:37:06 +0000
commit6ae7e8a1bae83d407b22d8b066dd0bcca730e1bb (patch)
treef2276fee4fcc61c3d89b942c63d6211e41617cda /sdnr/wt/data-provider/provider/src/test/java
parentd702f00b71218c56af766363ce19f2459081d73c (diff)
weekly sdnr code sync
sync internal code progress add istanbul database structure cleanup dataprovider test fix pom files Issue-ID: CCSDK-3260 Signed-off-by: Michael DÜrre <michael.duerre@highstreet-technologies.com> Change-Id: Ic1daa6adda173dc8337a51fa930e05c05ee88e2c
Diffstat (limited to 'sdnr/wt/data-provider/provider/src/test/java')
-rw-r--r--sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestEventService.java2
-rw-r--r--sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestInventoryConsistency.java70
-rw-r--r--sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestTree.java110
3 files changed, 145 insertions, 37 deletions
diff --git a/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestEventService.java b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestEventService.java
index 56138b0b1..b83034d90 100644
--- a/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestEventService.java
+++ b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestEventService.java
@@ -206,7 +206,6 @@ public class TestEventService {
List<NetworkElementConnectionEntity> nes = service.getNetworkElementConnections();
assertEquals(0, nes.size());
service.updateNetworkConnection22(createNeConnection(NODEID, NetworkElementDeviceType.Unknown), NODEID);
- service.updateNetworkConnection22(createNeConnection(NODEID, NetworkElementDeviceType.Unknown), NODEID);
service.updateNetworkConnection22(createNeConnection(NODEID2, NetworkElementDeviceType.ORAN), NODEID2);
nes = service.getNetworkElementConnections();
assertEquals(2, nes.size());
@@ -279,7 +278,6 @@ public class TestEventService {
/**
* @param devType
- * @param mountMethod
* @param nodename3
* @return
*/
diff --git a/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestInventoryConsistency.java b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestInventoryConsistency.java
new file mode 100644
index 000000000..ed8eac949
--- /dev/null
+++ b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestInventoryConsistency.java
@@ -0,0 +1,70 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP : ccsdk features
+ * ================================================================================
+ * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property.
+ * 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=========================================================
+ *
+ */
+package org.onap.ccsdk.features.sdnr.wt.dataprovider.test;
+
+import static org.junit.Assert.fail;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.onap.ccsdk.features.sdnr.wt.common.database.HtDatabaseClient;
+import org.onap.ccsdk.features.sdnr.wt.common.database.SearchHit;
+import org.onap.ccsdk.features.sdnr.wt.common.database.config.HostInfo;
+import org.onap.ccsdk.features.sdnr.wt.dataprovider.data.ElasticSearchDataProvider;
+import org.onap.ccsdk.features.sdnr.wt.dataprovider.test.util.HostInfoForTest;
+import org.onap.ccsdk.features.sdnr.wt.yang.mapper.YangToolsMapper;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.Inventory;
+
+public class TestInventoryConsistency {
+
+ private static final String TEST1NODEID = "sim1";
+ private static String resourceDirectoryPath = "/" + TestTree.class.getSimpleName() + "/";
+ private static ElasticSearchDataProvider dbProvider;
+ private static HtDatabaseClient dbRawProvider;
+
+ @BeforeClass
+ public static void init() throws Exception {
+ HostInfo[] hosts = HostInfoForTest.get();
+ dbProvider = new ElasticSearchDataProvider(hosts);
+ dbProvider.waitForYellowDatabaseStatus(30, TimeUnit.SECONDS);
+ dbRawProvider = HtDatabaseClient.getClient(hosts);
+ }
+
+ @Test
+ public void test1() {
+ YangToolsMapper mapper = new YangToolsMapper();
+ try {
+ SearchHit[] hits = TestTree.loadEntries("test1.json");
+ List<Inventory> inventoryList = new ArrayList<>();
+ for(SearchHit hit:hits) {
+ inventoryList.add(mapper.readValue(hit.getSourceAsString(), Inventory.class));
+ }
+ dbProvider.getDataProvider().writeInventory(TEST1NODEID, inventoryList);
+ } catch (IOException e) {
+
+ e.printStackTrace();
+ fail(e.getMessage());
+ }
+ }
+}
diff --git a/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestTree.java b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestTree.java
index e32179122..28f7d49fe 100644
--- a/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestTree.java
+++ b/sdnr/wt/data-provider/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/dataprovider/test/TestTree.java
@@ -25,10 +25,12 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
import org.apache.sshd.common.util.io.IoUtils;
+import org.json.JSONArray;
import org.json.JSONObject;
import org.junit.BeforeClass;
import org.junit.Test;
import org.onap.ccsdk.features.sdnr.wt.common.database.HtDatabaseClient;
+import org.onap.ccsdk.features.sdnr.wt.common.database.SearchHit;
import org.onap.ccsdk.features.sdnr.wt.common.database.config.HostInfo;
import org.onap.ccsdk.features.sdnr.wt.common.database.queries.QueryBuilders;
import org.onap.ccsdk.features.sdnr.wt.common.database.requests.DeleteByQueryRequest;
@@ -43,7 +45,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.pro
public class TestTree {
- private static String resourceDirectoryPath="/"+TestTree.class.getSimpleName()+"/";
+ private static String resourceDirectoryPath = "/" + TestTree.class.getSimpleName() + "/";
private static ElasticSearchDataProvider dbProvider;
private static HtDatabaseClient dbRawProvider;
@@ -53,39 +55,44 @@ public class TestTree {
dbProvider = new ElasticSearchDataProvider(hosts);
dbProvider.waitForYellowDatabaseStatus(30, TimeUnit.SECONDS);
dbRawProvider = HtDatabaseClient.getClient(hosts);
+
+
+ }
+
+ public static void clearTestData(HtDatabaseClient dbRawProvider) throws IOException {
DeleteByQueryRequest query = new DeleteByQueryRequest(Entity.Inventoryequipment.getName(), true);
query.setQuery(QueryBuilders.matchAllQuery().toJSON());
dbRawProvider.deleteByQuery(query);
- fillTestData();
}
- private static void fillTestData() throws IOException {
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.5.5", getFileContent("1.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.7.0", getFileContent("2.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.55.1.2", getFileContent("3.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.65.1.2", getFileContent("4.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/SHELF-1.1.0.0", getFileContent("5.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.1.5", getFileContent("6.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.1.8", getFileContent("7.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.6.5", getFileContent("8.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/ODU-1.56.0.0", getFileContent("9.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.56.1.2", getFileContent("10.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/IDU-1.65.0.0", getFileContent("11.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.65.1.4", getFileContent("12.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.6.0", getFileContent("13.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.8.0", getFileContent("14.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.9.0", getFileContent("15.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.55.1.4", getFileContent("16.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.1.7", getFileContent("17.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/IDU-1.55.0.0", getFileContent("18.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.1.0", getFileContent("19.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/CARD-1.1.5.0", getFileContent("20.json"));
- dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), "sim1/a2.module-1.1.5.6", getFileContent("21.json"));
+ public static void fillTestData(HtDatabaseClient dbRawProvider, String filename) throws IOException {
+ SearchHit[] entries = loadEntries(filename);
+ for (SearchHit entry : entries) {
+ dbRawProvider.doWriteRaw(Entity.Inventoryequipment.getName(), entry.getId(), entry.getSourceAsString());
+ }
}
+ public static SearchHit[] loadEntries(String filename) throws IOException {
+ String content = getFileContent(filename);
+ JSONArray a = new JSONArray(content);
+ SearchHit[] results = new SearchHit[a.length()];
+ for (int i = 0; i < a.length(); i++) {
+ results[i] = new SearchHit(a.getJSONObject(i));
+ }
+ return results;
+ }
+
@Test
public void testInventoryTree() throws IOException {
+ test1();
+ //test2();
+
+ }
+
+ private void test1() throws IOException {
+ clearTestData(dbRawProvider);
+ fillTestData(dbRawProvider, "test1.json");
DataTreeProviderImpl provider = new DataTreeProviderImpl();
provider.setDatabaseClient(dbRawProvider);
@@ -93,40 +100,66 @@ public class TestTree {
DataTreeObject tree = provider.readInventoryTree(null, null);
System.out.println(tree.toJSON());
JSONObject o = new JSONObject(tree.toJSON());
- JSONAssert.assertContainsOnlyKey(o, "sim1");
+ JSONAssert.assertContainsExactKeys(o, new String[]{"sim1","sim2"});
JSONObject children = o.getJSONObject("sim1").getJSONObject("children");
this.assertSim1(children);
tree = provider.readInventoryTree(Arrays.asList("sim1"), "*");
this.assertSim1(new JSONObject(tree.toJSON()));
System.out.println(tree.toJSON());
+ }
+
+ private void test2() throws IOException {
+ clearTestData(dbRawProvider);
+ fillTestData(dbRawProvider, "test2.json");
+ DataTreeProviderImpl provider = new DataTreeProviderImpl();
+ provider.setDatabaseClient(dbRawProvider);
+
+ DataTreeObject tree =
+ provider.readInventoryTree(Arrays.asList("netconf_server_simulator"), "*");
+ System.out.println(tree.toJSON());
+ JSONObject o = new JSONObject(tree.toJSON());
+ JSONAssert.assertContainsOnlyKey(o, "sim1");
+ JSONObject children = o.getJSONObject("sim1").getJSONObject("children");
+ this.assertSim1(children);
+
+ tree = provider.readInventoryTree(Arrays.asList("sim1"), "*");
+ this.assertSim1(new JSONObject(tree.toJSON()));
+ System.out.println(tree.toJSON());
}
private void assertSim1(JSONObject sim1Children) {
- JSONAssert.assertContainsExactKeys(sim1Children,new String[] {"sim1/ODU-1.56.0.0", "sim1/IDU-1.55.0.0", "sim1/IDU-1.65.0.0", "sim1/SHELF-1.1.0.0"});
+ JSONAssert.assertContainsExactKeys(sim1Children,
+ new String[] {"sim1/ODU-1.56.0.0", "sim1/IDU-1.55.0.0", "sim1/IDU-1.65.0.0", "sim1/SHELF-1.1.0.0"});
JSONObject c1 = sim1Children.getJSONObject("sim1/ODU-1.56.0.0");
JSONObject c2 = sim1Children.getJSONObject("sim1/IDU-1.55.0.0");
JSONObject c3 = sim1Children.getJSONObject("sim1/IDU-1.65.0.0");
JSONObject c4 = sim1Children.getJSONObject("sim1/SHELF-1.1.0.0");
- JSONAssert.assertContainsExactKeys(c1.getJSONObject("children"),new String[] {"sim1/a2.module-1.56.1.2"});
- JSONAssert.assertContainsExactKeys(c2.getJSONObject("children"),new String[] {"sim1/a2.module-1.55.1.2","sim1/CARD-1.55.1.4"});
- JSONAssert.assertContainsExactKeys(c3.getJSONObject("children"),new String[] {"sim1/a2.module-1.65.1.2","sim1/CARD-1.65.1.4"});
- JSONAssert.assertContainsExactKeys(c4.getJSONObject("children"),new String[] {"sim1/CARD-1.1.1.0",
- "sim1/CARD-1.1.5.0", "sim1/CARD-1.1.7.0","sim1/CARD-1.1.6.0", "sim1/CARD-1.1.9.0","sim1/CARD-1.1.8.0"});
+ JSONAssert.assertContainsExactKeys(c1.getJSONObject("children"), new String[] {"sim1/a2.module-1.56.1.2"});
+ JSONAssert.assertContainsExactKeys(c2.getJSONObject("children"),
+ new String[] {"sim1/a2.module-1.55.1.2", "sim1/CARD-1.55.1.4"});
+ JSONAssert.assertContainsExactKeys(c3.getJSONObject("children"),
+ new String[] {"sim1/a2.module-1.65.1.2", "sim1/CARD-1.65.1.4"});
+ JSONAssert.assertContainsExactKeys(c4.getJSONObject("children"),
+ new String[] {"sim1/CARD-1.1.1.0", "sim1/CARD-1.1.5.0", "sim1/CARD-1.1.7.0", "sim1/CARD-1.1.6.0",
+ "sim1/CARD-1.1.9.0", "sim1/CARD-1.1.8.0"});
JSONObject c41 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.1.0");
JSONObject c42 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.5.0");
JSONObject c43 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.7.0");
JSONObject c44 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.6.0");
JSONObject c45 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.9.0");
JSONObject c46 = c4.getJSONObject("children").getJSONObject("sim1/CARD-1.1.8.0");
- JSONAssert.assertContainsExactKeys(c41.getJSONObject("children"),new String[] {"sim1/a2.module-1.1.1.7","sim1/a2.module-1.1.1.5","sim1/a2.module-1.1.1.8"});
- JSONAssert.assertContainsExactKeys(c42.getJSONObject("children"),new String[] {"sim1/a2.module-1.1.5.6","sim1/a2.module-1.1.5.5"});
+ JSONAssert.assertContainsExactKeys(c41.getJSONObject("children"),
+ new String[] {"sim1/a2.module-1.1.1.7", "sim1/a2.module-1.1.1.5", "sim1/a2.module-1.1.1.8"});
+ JSONAssert.assertContainsExactKeys(c42.getJSONObject("children"),
+ new String[] {"sim1/a2.module-1.1.5.6", "sim1/a2.module-1.1.5.5"});
JSONAssert.assertContainsNoKeys(c43.getJSONObject("children"));
- JSONAssert.assertContainsExactKeys(c44.getJSONObject("children"),new String[] {"sim1/a2.module-1.1.6.5"});
+ JSONAssert.assertContainsExactKeys(c44.getJSONObject("children"), new String[] {"sim1/a2.module-1.1.6.5"});
JSONAssert.assertContainsNoKeys(c45.getJSONObject("children"));
JSONAssert.assertContainsNoKeys(c46.getJSONObject("children"));
}
+
@Test
public void testUriConversion() {
EntityWithTree e = DataTreeHttpServlet.getEntity("/tree/read-inventoryequipment-tree/sim1/sim1%2FODU");
@@ -135,7 +168,14 @@ public class TestTree {
System.out.println(e);
}
+ @Test
+ public void testUriConversion1() {
+ EntityWithTree e = DataTreeHttpServlet.getEntity("/tree/read-inventoryequipment-tree/sim1");
+ System.out.println(e);
+ }
+
private static String getFileContent(String filename) throws IOException {
- return String.join("\n",IoUtils.readAllLines(TestTree.class.getResourceAsStream(resourceDirectoryPath+filename)));
+ return String.join("\n",
+ IoUtils.readAllLines(TestTree.class.getResourceAsStream(resourceDirectoryPath + filename)));
}
}