-/*
-* ============LICENSE_START=======================================================
-* SPARKY (AAI UI service)
-* ================================================================================
-* Copyright © 2017 AT&T Intellectual Property.
-* Copyright © 2017 Amdocs
-* 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=========================================================
-*
-* ECOMP and OpenECOMP are trademarks
-* and service marks of AT&T Intellectual Property.
-*/
-
-package org.onap.aai.sparky.dal.elasticsearch;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertNotNull;
-
-import java.io.File;
-import java.io.IOException;
-
-import javax.servlet.ServletException;
-
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.aai.sparky.dal.elasticsearch.config.ElasticSearchConfig;
-import org.onap.aai.sparky.dal.exception.ElasticSearchOperationException;
-
-import ch.qos.logback.classic.Level;
-
-/**
- * The Class ElasticSearchConfigTest.
- */
-public class ElasticSearchConfigTest {
-
- private static final String GOOD_MAPPINGS_FILE =
- "{" + "\"properties\": {" + "\"entityType\": {" + "\"type\": \"string\"" + "},"
- + "\"edgeTagQueryEntityFieldName\": {" + "\"type\": \"string\"," + "\"index\": \"no\""
- + "}," + "\"edgeTagQueryEntityFieldValue\": {" + "\"type\": \"string\","
- + "\"index\": \"no\"" + "}," + "\"searchTagIDs\" : {" + "\"type\" : \"string\"" + "},"
- + "\"searchTags\": {" + "\"type\": \"string\"," + "\"analyzer\": \"nGram_analyzer\","
- + "\"search_analyzer\": \"whitespace_analyzer\"}" + "}" + "}";
-
- private static final String GOOD_SETTINGS_FILE = "{\"analysis\": {" + "\"filter\": {"
- + "\"nGram_filter\": {" + "\"type\": \"nGram\"," + "\"min_gram\": 1," + "\"max_gram\": 50,"
- + "\"token_chars\": [" + "\"letter\"," + "\"digit\"," + "\"punctuation\"," + "\"symbol\""
- + "]}}," + "\"analyzer\": {" + "\"nGram_analyzer\": {" + "\"type\": \"custom\","
- + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\"," + "\"asciifolding\","
- + "\"nGram_filter\"]}," + "\"whitespace_analyzer\": {" + "\"type\": \"custom\","
- + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\","
- + "\"asciifolding\"]}}}}";
-
- private static final String BAD_SETTINGS_FILE = "{\"analysis\": {" + "\"filter\": {"
- + "\"nGram_filter\": {" + "\"type\": \"nGram\"," + "\"min_gram\": 1," + "\"max_gram\": 50,"
- + "\"token_chars\": [" + "\"letter\"," + "\"digit\"," + "\"punctuation\"," + "\"symbol\""
- + "]}}," + "\"analyzer\": {" + "\"nGram_analyzer\": {" + "\"type\": \"custom\","
- + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\"," + "\"asciifolding\","
- + "\"nGram_filter\"]}," + "\"whitespace_analyzer\": {" + "\"type\": \"custom\","
- + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\","
- + "\"asciifolding\"]}}";
-
- /**
- * Inits the.
- *
- * @throws Exception the exception
- */
- @Before
- public void init() throws Exception {
- }
-
- /**
- * Validate accessors.
- *
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws ServletException the servlet exception
- * @throws Exception the exception
- */
- @Test
- public void validateAccessors() throws IOException, ServletException, Exception {
-
- ElasticSearchConfig esConfig = new ElasticSearchConfig();
-
- esConfig.setIpAddress("47.248.10.127");
- esConfig.setHttpPort("8123");
- esConfig.setJavaApiPort("9123");
- esConfig.setIndexName("myIndexName");
- esConfig.setType("myIndexTableType");
- esConfig.setClusterName("ES_AAI_DEV");
- esConfig.setMappingsFileName("d:\\1\\mappings.json");
- esConfig.setSettingsFileName("d:\\1\\settings.json");
- esConfig.setAuditIndexName("auditIndexName");
-
- ElasticSearchConfig.setConfig(esConfig);
-
- assertEquals(esConfig.getIpAddress(), "47.248.10.127");
- assertEquals(esConfig.getHttpPort(), "8123");
- assertEquals(esConfig.getJavaApiPort(), "9123");
- assertEquals(esConfig.getIndexName(), "myIndexName");
- assertEquals(esConfig.getType(), "myIndexTableType");
- assertEquals(esConfig.getClusterName(), "ES_AAI_DEV");
- assertEquals(esConfig.getMappingsFileName(), "d:\\1\\mappings.json");
- assertEquals(esConfig.getSettingsFileName(), "d:\\1\\settings.json");
- assertEquals(esConfig.getAuditIndexName(), "auditIndexName");
-
- String output = esConfig.toString();
-
- assertNotEquals(output, null);
-
- }
-
- /**
- * Gets the elastic search settings expect valid config.
- *
- * @return the elastic search settings expect valid config
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws ElasticSearchOperationException the elastic search operation exception
- * Need to revisit this test case and change the way this class works
- */
- @Ignore
- public void getElasticSearchSettings_expectValidConfig()
- throws IOException, ElasticSearchOperationException {
- System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));
-
- ElasticSearchConfig esConfig = new ElasticSearchConfig();
-
- esConfig.setSettingsFileName("src/main/config/es_settings.json");
-
- assertNotNull(esConfig.getElasticSearchSettings());
- }
-
- /**
- * Gets the elastic search settings expect file not found exception.
- *
- * @return the elastic search settings expect file not found exception
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws ElasticSearchOperationException the elastic search operation exception
- *
- * Need to revisit this test case and change the way this class works
- */
- @Ignore
- public void getElasticSearchSettings_expectFileNotFoundException()
- throws IOException, ElasticSearchOperationException {
- System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));
-
- ElasticSearchConfig esConfig = new ElasticSearchConfig();
-
- esConfig.setSettingsFileName("src/main/config/es_setting.json");
-
- esConfig.getElasticSearchSettings();
-
- }
-
- /**
- * Gets the elastic search mappings expect valid config.
- *
- * @return the elastic search mappings expect valid config
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws ElasticSearchOperationException the elastic search operation exception
- *
- * Need to revisit this test case and change the way this class works
- */
- @Ignore
- public void getElasticSearchMappings_expectValidConfig()
- throws IOException, ElasticSearchOperationException {
- System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));
-
- ElasticSearchConfig esConfig = new ElasticSearchConfig();
-
- esConfig.setMappingsFileName("src/main/config/es_mappings.json");
-
- assertNotNull(esConfig.getElasticSearchMappings());
- }
-
- /**
- * Gets the elastic search mappings expect file not found exception.
- *
- * @return the elastic search mappings expect file not found exception
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws ElasticSearchOperationException the elastic search operation exception
- */
- @Test(expected = ElasticSearchOperationException.class)
- public void getElasticSearchMappings_expectFileNotFoundException()
- throws IOException, ElasticSearchOperationException {
- System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));
-
- ElasticSearchConfig esConfig = new ElasticSearchConfig();
-
- esConfig.setSettingsFileName("src/main/config/es_setting.json");
-
- esConfig.getElasticSearchMappings();
-
- }
-
- /**
- * Builds the elastic search table config expect valid result.
- *
- * @throws ElasticSearchOperationException the elastic search operation exception
- * @throws IOException Signals that an I/O exception has occurred.
- */
- @Test
- public void buildElasticSearchTableConfig_expectValidResult()
- throws ElasticSearchOperationException, IOException {
- ElasticSearchConfig spyEsConfig = Mockito.spy(new ElasticSearchConfig());
- Mockito.doReturn(GOOD_MAPPINGS_FILE).when(spyEsConfig).getElasticSearchMappings();
- Mockito.doReturn(GOOD_SETTINGS_FILE).when(spyEsConfig).getElasticSearchSettings();
- Mockito.doReturn("myIndexTableType").when(spyEsConfig).getType();
-
- assertNotNull(spyEsConfig.buildElasticSearchTableConfig());
- }
-
- /**
- * Builds the elastic search table config expect exception.
- *
- * @throws ElasticSearchOperationException the elastic search operation exception
- * @throws IOException Signals that an I/O exception has occurred.
- */
- @Test(expected = ElasticSearchOperationException.class)
- public void buildElasticSearchTableConfig_expectException()
- throws ElasticSearchOperationException, IOException {
- ElasticSearchConfig spyEsConfig = Mockito.spy(new ElasticSearchConfig());
- Mockito.doReturn(GOOD_MAPPINGS_FILE).when(spyEsConfig).getElasticSearchMappings();
- Mockito.doReturn(BAD_SETTINGS_FILE).when(spyEsConfig).getElasticSearchSettings();
- Mockito.doReturn("myIndexTableType").when(spyEsConfig).getType();
-
- spyEsConfig.buildElasticSearchTableConfig();
- }
-
-}
+/**\r
+ * ============LICENSE_START=======================================================\r
+ * org.onap.aai\r
+ * ================================================================================\r
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright © 2017 Amdocs\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ *\r
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
+ */\r
+\r
+package org.onap.aai.sparky.dal.elasticsearch;\r
+\r
+import static org.junit.Assert.assertEquals;\r
+import static org.junit.Assert.assertNotEquals;\r
+import static org.junit.Assert.assertNotNull;\r
+\r
+import java.io.File;\r
+import java.io.IOException;\r
+\r
+import javax.servlet.ServletException;\r
+\r
+import org.junit.Assert;\r
+import org.junit.Before;\r
+import org.junit.Ignore;\r
+import org.junit.Test;\r
+import org.mockito.Mockito;\r
+import org.onap.aai.sparky.dal.elasticsearch.config.ElasticSearchConfig;\r
+import org.onap.aai.sparky.dal.exception.ElasticSearchOperationException;\r
+\r
+import ch.qos.logback.classic.Level;\r
+\r
+/**\r
+ * The Class ElasticSearchConfigTest.\r
+ */\r
+public class ElasticSearchConfigTest {\r
+\r
+ private static final String GOOD_MAPPINGS_FILE =\r
+ "{" + "\"properties\": {" + "\"entityType\": {" + "\"type\": \"string\"" + "},"\r
+ + "\"edgeTagQueryEntityFieldName\": {" + "\"type\": \"string\"," + "\"index\": \"no\""\r
+ + "}," + "\"edgeTagQueryEntityFieldValue\": {" + "\"type\": \"string\","\r
+ + "\"index\": \"no\"" + "}," + "\"searchTagIDs\" : {" + "\"type\" : \"string\"" + "},"\r
+ + "\"searchTags\": {" + "\"type\": \"string\"," + "\"analyzer\": \"nGram_analyzer\","\r
+ + "\"search_analyzer\": \"whitespace_analyzer\"}" + "}" + "}";\r
+\r
+ private static final String GOOD_SETTINGS_FILE = "{\"analysis\": {" + "\"filter\": {"\r
+ + "\"nGram_filter\": {" + "\"type\": \"nGram\"," + "\"min_gram\": 1," + "\"max_gram\": 50,"\r
+ + "\"token_chars\": [" + "\"letter\"," + "\"digit\"," + "\"punctuation\"," + "\"symbol\""\r
+ + "]}}," + "\"analyzer\": {" + "\"nGram_analyzer\": {" + "\"type\": \"custom\","\r
+ + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\"," + "\"asciifolding\","\r
+ + "\"nGram_filter\"]}," + "\"whitespace_analyzer\": {" + "\"type\": \"custom\","\r
+ + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\","\r
+ + "\"asciifolding\"]}}}}";\r
+\r
+ private static final String BAD_SETTINGS_FILE = "{\"analysis\": {" + "\"filter\": {"\r
+ + "\"nGram_filter\": {" + "\"type\": \"nGram\"," + "\"min_gram\": 1," + "\"max_gram\": 50,"\r
+ + "\"token_chars\": [" + "\"letter\"," + "\"digit\"," + "\"punctuation\"," + "\"symbol\""\r
+ + "]}}," + "\"analyzer\": {" + "\"nGram_analyzer\": {" + "\"type\": \"custom\","\r
+ + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\"," + "\"asciifolding\","\r
+ + "\"nGram_filter\"]}," + "\"whitespace_analyzer\": {" + "\"type\": \"custom\","\r
+ + "\"tokenizer\": \"whitespace\"," + "\"filter\": [" + "\"lowercase\","\r
+ + "\"asciifolding\"]}}";\r
+\r
+ ElasticSearchConfig elasticSearchConfig;\r
+\r
+ /**\r
+ * Inits the.\r
+ *\r
+ * @throws Exception the exception\r
+ */\r
+ @Before\r
+ public void init() throws Exception {\r
+ elasticSearchConfig = Mockito.spy(new ElasticSearchConfig());\r
+ }\r
+\r
+ /**\r
+ * Validate accessors.\r
+ *\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ * @throws ServletException the servlet exception\r
+ * @throws Exception the exception\r
+ */\r
+ @Test\r
+ public void validateAccessors() throws IOException, ServletException, Exception {\r
+\r
+ ElasticSearchConfig esConfig = new ElasticSearchConfig();\r
+\r
+ esConfig.setIpAddress("47.248.10.127");\r
+ esConfig.setHttpPort("8123");\r
+ esConfig.setJavaApiPort("9123");\r
+ esConfig.setIndexName("myIndexName");\r
+ esConfig.setType("myIndexTableType");\r
+ esConfig.setClusterName("ES_AAI_DEV");\r
+ esConfig.setMappingsFileName("d:\\1\\mappings.json");\r
+ esConfig.setSettingsFileName("d:\\1\\settings.json");\r
+ esConfig.setAuditIndexName("auditIndexName");\r
+\r
+ ElasticSearchConfig.setConfig(esConfig);\r
+\r
+ assertEquals(esConfig.getIpAddress(), "47.248.10.127");\r
+ assertEquals(esConfig.getHttpPort(), "8123");\r
+ assertEquals(esConfig.getJavaApiPort(), "9123");\r
+ assertEquals(esConfig.getIndexName(), "myIndexName");\r
+ assertEquals(esConfig.getType(), "myIndexTableType");\r
+ assertEquals(esConfig.getClusterName(), "ES_AAI_DEV");\r
+ assertEquals(esConfig.getMappingsFileName(), "d:\\1\\mappings.json");\r
+ assertEquals(esConfig.getSettingsFileName(), "d:\\1\\settings.json");\r
+ assertEquals(esConfig.getAuditIndexName(), "auditIndexName");\r
+\r
+ String output = esConfig.toString();\r
+\r
+ assertNotEquals(output, null);\r
+\r
+ }\r
+\r
+ /**\r
+ * Gets the elastic search settings expect valid config.\r
+ *\r
+ * @return the elastic search settings expect valid config\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ * Need to revisit this test case and change the way this class works\r
+ */\r
+ @Ignore\r
+ public void getElasticSearchSettings_expectValidConfig()\r
+ throws IOException, ElasticSearchOperationException {\r
+ System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
+\r
+ ElasticSearchConfig esConfig = new ElasticSearchConfig();\r
+\r
+ esConfig.setSettingsFileName("src/main/config/es_settings.json");\r
+\r
+ assertNotNull(esConfig.getElasticSearchSettings());\r
+ }\r
+\r
+ /**\r
+ * Gets the elastic search settings expect file not found exception.\r
+ *\r
+ * @return the elastic search settings expect file not found exception\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ *\r
+ * Need to revisit this test case and change the way this class works\r
+ */\r
+ @Ignore\r
+ public void getElasticSearchSettings_expectFileNotFoundException()\r
+ throws IOException, ElasticSearchOperationException {\r
+ System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
+\r
+ ElasticSearchConfig esConfig = new ElasticSearchConfig();\r
+\r
+ esConfig.setSettingsFileName("src/main/config/es_setting.json");\r
+\r
+ esConfig.getElasticSearchSettings();\r
+\r
+ }\r
+\r
+ /**\r
+ * Gets the elastic search mappings expect valid config.\r
+ *\r
+ * @return the elastic search mappings expect valid config\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ *\r
+ * Need to revisit this test case and change the way this class works\r
+ */\r
+ @Ignore\r
+ public void getElasticSearchMappings_expectValidConfig()\r
+ throws IOException, ElasticSearchOperationException {\r
+ System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
+\r
+ ElasticSearchConfig esConfig = new ElasticSearchConfig();\r
+\r
+ esConfig.setMappingsFileName("src/main/config/es_mappings.json");\r
+\r
+ assertNotNull(esConfig.getElasticSearchMappings());\r
+ }\r
+\r
+ /**\r
+ * Gets the elastic search mappings expect file not found exception.\r
+ *\r
+ * @return the elastic search mappings expect file not found exception\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ */\r
+ @Test(expected = ElasticSearchOperationException.class)\r
+ public void getElasticSearchMappings_expectFileNotFoundException()\r
+ throws IOException, ElasticSearchOperationException {\r
+ System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
+\r
+ ElasticSearchConfig esConfig = new ElasticSearchConfig();\r
+\r
+ esConfig.setSettingsFileName("src/main/config/es_setting.json");\r
+\r
+ esConfig.getElasticSearchMappings();\r
+\r
+ }\r
+\r
+ /**\r
+ * Builds the elastic search table config expect valid result.\r
+ *\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ */\r
+ @Test\r
+ public void buildElasticSearchTableConfig_expectValidResult()\r
+ throws ElasticSearchOperationException, IOException {\r
+ ElasticSearchConfig spyEsConfig = Mockito.spy(new ElasticSearchConfig());\r
+ Mockito.doReturn(GOOD_MAPPINGS_FILE).when(spyEsConfig).getElasticSearchMappings();\r
+ Mockito.doReturn(GOOD_SETTINGS_FILE).when(spyEsConfig).getElasticSearchSettings();\r
+ Mockito.doReturn("myIndexTableType").when(spyEsConfig).getType();\r
+\r
+ assertNotNull(spyEsConfig.buildElasticSearchTableConfig());\r
+ }\r
+\r
+ /**\r
+ * Builds the elastic search table config expect exception.\r
+ *\r
+ * @throws ElasticSearchOperationException the elastic search operation exception\r
+ * @throws IOException Signals that an I/O exception has occurred.\r
+ */\r
+ @Test(expected = ElasticSearchOperationException.class)\r
+ public void buildElasticSearchTableConfig_expectException()\r
+ throws ElasticSearchOperationException, IOException {\r
+ ElasticSearchConfig spyEsConfig = Mockito.spy(new ElasticSearchConfig());\r
+ Mockito.doReturn(GOOD_MAPPINGS_FILE).when(spyEsConfig).getElasticSearchMappings();\r
+ Mockito.doReturn(BAD_SETTINGS_FILE).when(spyEsConfig).getElasticSearchSettings();\r
+ Mockito.doReturn("myIndexTableType").when(spyEsConfig).getType();\r
+\r
+ spyEsConfig.buildElasticSearchTableConfig();\r
+ }\r
+\r
+ @Test\r
+ public void testGetFullUrl_ThreeParams() throws Exception {\r
+ Mockito.when(elasticSearchConfig.getIpAddress()).thenReturn("http://localhost");\r
+ Mockito.when(elasticSearchConfig.getHttpPort()).thenReturn("5443");\r
+ String fullUrl = elasticSearchConfig.getElasticFullUrl("http://localhost:5443/aai/model/index", "entity-index", "entity");\r
+ Assert.assertNotNull(fullUrl);\r
+ }\r
+\r
+ @Test\r
+ public void testGetFullUrl_OneParam() throws Exception {\r
+ Mockito.when(elasticSearchConfig.getIpAddress()).thenReturn("http://localhost");\r
+ Mockito.when(elasticSearchConfig.getHttpPort()).thenReturn("5443");\r
+ Mockito.when(elasticSearchConfig.getIndexName()).thenReturn("entity");\r
+ String fullUrl = elasticSearchConfig.getElasticFullUrl("http://localhost:5443/aai/model/index");\r
+ Assert.assertNotNull(fullUrl);\r
+ }\r
+\r
+ @Test\r
+ public void testGetBulkUrl() throws Exception {\r
+ Mockito.when(elasticSearchConfig.getIpAddress()).thenReturn("http://localhost");\r
+ Mockito.when(elasticSearchConfig.getHttpPort()).thenReturn("5443");\r
+ String fullUrl = elasticSearchConfig.getBulkUrl();\r
+ Assert.assertNotNull(fullUrl);\r
+ }\r
+\r
+ @Test\r
+ public void testGetConfigAsString() throws IOException, ElasticSearchOperationException {\r
+ System.setProperty("AJSC_HOME", new File(".").getCanonicalPath().replace('\\', '/'));\r
+ String retStr = elasticSearchConfig.getConfigAsString("item-1", System.getProperty("AJSC_HOME")+"/src/test/resources/appconfig/roles.config");\r
+ Assert.assertNotNull(retStr);\r
+ }\r
+\r
+}\r