diff options
Diffstat (limited to 'mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka')
2 files changed, 223 insertions, 0 deletions
diff --git a/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamServiceTest.java b/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamServiceTest.java new file mode 100644 index 0000000..cad3b71 --- /dev/null +++ b/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamServiceTest.java @@ -0,0 +1,125 @@ +/* + * + * * ============LICENSE_START======================================================= + * * org.onap.dcae + * * ================================================================================ + * * Copyright (c) 2021 Nokia 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.blueprintgenerator.service.common.kafka; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.util.LinkedHashMap; +import java.util.Map; +import org.junit.Test; + +import org.junit.runner.RunWith; +import org.onap.blueprintgenerator.service.base.BlueprintHelperService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.ConfigFileApplicationContextInitializer; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration(classes = {KafkaStreamService.class, BlueprintHelperService.class}, + initializers = ConfigFileApplicationContextInitializer.class) +public class KafkaStreamServiceTest { + + private static final String TEST_STREAM_NAME = "test_stream_name"; + private static final String PUBLISH_URL_SUFFIX = "_publish_url"; + private static final String SUBSCRIBE_URL_SUFFIX = "_subscribe_url"; + private static final String DEFAULT_KEY = "default"; + private static final String KAFKA_TYPE = "kafka"; + + @Autowired + private KafkaStreamService kafkaStreamService; + + @Test + public void createCorrectStreamCommonInputs() { + + Map<String, LinkedHashMap<String, Object>> publishInputs = kafkaStreamService + .createStreamPublishInputs("test_stream_name"); + + LinkedHashMap<String, Object> kafka_bootstrap_servers = publishInputs.get("kafka_bootstrap_servers"); + LinkedHashMap<String, Object> kafka_username = publishInputs.get("kafka_username"); + LinkedHashMap<String, Object> kafka_password = publishInputs.get("kafka_password"); + + assertNotNull(kafka_bootstrap_servers); + assertNotNull(kafka_username); + assertNotNull(kafka_password); + + assertNotNull(kafka_bootstrap_servers.get(DEFAULT_KEY)); + assertNotNull(kafka_username.get(DEFAULT_KEY)); + assertNotNull(kafka_password.get(DEFAULT_KEY)); + } + + @Test + public void createCorrectStreamPublishInput() { + Map<String, LinkedHashMap<String, Object>> publishInputs = kafkaStreamService + .createStreamPublishInputs(TEST_STREAM_NAME); + + LinkedHashMap<String, Object> kafka_stream_name = publishInputs.get(TEST_STREAM_NAME + PUBLISH_URL_SUFFIX); + + assertNotNull(kafka_stream_name); + + assertNotNull(kafka_stream_name.get(DEFAULT_KEY)); + } + + @Test + public void createCorrectStreamSubscribeInput() { + Map<String, LinkedHashMap<String, Object>> publishInputs = kafkaStreamService + .createStreamSubscribeInputs(TEST_STREAM_NAME); + + LinkedHashMap<String, Object> kafka_stream_name = publishInputs.get(TEST_STREAM_NAME + SUBSCRIBE_URL_SUFFIX); + + assertNotNull(kafka_stream_name); + + assertNotNull(kafka_stream_name.get(DEFAULT_KEY)); + } + + @Test + public void createCorrectPublishAppConfig() { + Map<String, KafkaStream> appPropertiesPublish = kafkaStreamService + .createAppPropertiesPublish(TEST_STREAM_NAME); + + KafkaStream kafkaStream = appPropertiesPublish.get(TEST_STREAM_NAME); + + assertEquals(KAFKA_TYPE, kafkaStream.getType()); + assertNotNull(kafkaStream.getAafCredential()); + assertNotNull(kafkaStream.getKafkaInfo()); + assertTrue(kafkaStream.getKafkaInfo().toString().contains(TEST_STREAM_NAME + PUBLISH_URL_SUFFIX)); + + } + + @Test + public void createCorrectSubscribeAppConfig() { + Map<String, KafkaStream> appPropertiesSubscribe = kafkaStreamService + .createAppPropertiesSubscribe(TEST_STREAM_NAME); + + KafkaStream kafkaStream = appPropertiesSubscribe.get(TEST_STREAM_NAME); + + assertEquals(KAFKA_TYPE, kafkaStream.getType()); + assertNotNull(kafkaStream.getAafCredential()); + assertNotNull(kafkaStream.getKafkaInfo()); + assertTrue(kafkaStream.getKafkaInfo().toString().contains(TEST_STREAM_NAME + SUBSCRIBE_URL_SUFFIX)); + + } +} diff --git a/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamTest.java b/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamTest.java new file mode 100644 index 0000000..2ba2274 --- /dev/null +++ b/mod/bpgenerator/onap/src/test/java/org/onap/blueprintgenerator/service/common/kafka/KafkaStreamTest.java @@ -0,0 +1,98 @@ +/* + * + * * ============LICENSE_START======================================================= + * * org.onap.dcae + * * ================================================================================ + * * Copyright (c) 2021 Nokia 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.blueprintgenerator.service.common.kafka; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import java.io.IOException; +import org.junit.Before; +import org.junit.Test; + +public class KafkaStreamTest { + + private final static String TEST_TOPIC_NAME = "test_topic"; + private static final String GET_INPUT_KAFKA_USERNAME = "{\"get_input\":\"kafka_username\"}"; + private static final String GET_INPUT_KAFKA_PASSWORD = "{\"get_input\":\"kafka_password\"}"; + private static final String AAF_USERNAME = "username"; + private static final String AAF_PASSWORD = "password"; + private static final String AAF_CREDENTIAL_NODE = "aaf_credentials"; + private static final String KAFKA_TYPE_NODE = "type"; + private static final String EXPECTED_KAFKA_TYPE = "\"kafka\""; + private static final String KAFKA_BOOTSTRAP_SERVERS = "bootstrap_servers"; + private static final String KAFKA_TOPIC_NAME = "topic_name"; + private static final String EXPECTED_GET_INPUT_TOPIC = "{\"get_input\":\"" + TEST_TOPIC_NAME + "\"}"; + private static final String EXPECTED_GET_INPUT_BOOTSTRAP_SERVERS = "{\"get_input\":\"kafka_bootstrap_servers\"}"; + private static final String KAFKA_INFO_NODE = "kafka_info"; + + private KafkaStream kafkaStream; + private ObjectMapper mapper = new ObjectMapper(); + + @Before + public void setUp() { + kafkaStream = new KafkaStream(TEST_TOPIC_NAME); + } + + @Test + public void kafkaStreamHasCorrectAafCredential() throws IOException { + + String kafkaStreamJson = mapper.writeValueAsString(kafkaStream); + + JsonNode kafkaStreamNode = mapper.readTree(kafkaStreamJson); + JsonNode aafCredential = kafkaStreamNode.get(AAF_CREDENTIAL_NODE); + + assertNotNull(aafCredential); + assertEquals(GET_INPUT_KAFKA_USERNAME, aafCredential.get(AAF_USERNAME).toString()); + assertEquals(GET_INPUT_KAFKA_PASSWORD, aafCredential.get(AAF_PASSWORD).toString()); + } + + @Test + public void kafkaStreamHasCorrectKafkaInfo() throws IOException { + + String kafkaStreamJson = mapper.writeValueAsString(kafkaStream); + + JsonNode kafkaStreamNode = mapper.readTree(kafkaStreamJson); + JsonNode kafkaInfo = kafkaStreamNode.get(KAFKA_INFO_NODE); + + assertNotNull(kafkaInfo); + assertEquals(EXPECTED_GET_INPUT_BOOTSTRAP_SERVERS, kafkaInfo.get(KAFKA_BOOTSTRAP_SERVERS).toString()); + assertEquals(EXPECTED_GET_INPUT_TOPIC, kafkaInfo.get(KAFKA_TOPIC_NAME).toString()); + + } + + @Test + public void kafkaStreamHasCorrectType() throws IOException { + + String kafkaStreamJson = mapper.writeValueAsString(kafkaStream); + + JsonNode kafkaStreamNode = mapper.readTree(kafkaStreamJson); + JsonNode kafkaType = kafkaStreamNode.get(KAFKA_TYPE_NODE); + + assertNotNull(kafkaType); + assertEquals(EXPECTED_KAFKA_TYPE, kafkaType.toString()); + } + +} |