summaryrefslogtreecommitdiffstats
path: root/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae
diff options
context:
space:
mode:
Diffstat (limited to 'dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae')
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebSpringBootIT.java48
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebTest.java28
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/DmaapMrFlowsIT.java53
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/AnalyticsWebTestConfig.java43
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/DmaapMrTestConfig.java73
-rw-r--r--dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/spring/ConfigBindingServiceEnvironmentPostProcessorIT.java82
6 files changed, 327 insertions, 0 deletions
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebSpringBootIT.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebSpringBootIT.java
new file mode 100644
index 0000000..6184d34
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebSpringBootIT.java
@@ -0,0 +1,48 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.onap.dcae.analytics.model.AnalyticsProfile;
+import org.onap.dcae.analytics.test.BaseAnalyticsSpringBootIT;
+import org.onap.dcae.analytics.web.config.AnalyticsWebTestConfig;
+import org.springframework.test.context.ActiveProfiles;
+import org.springframework.test.context.ContextConfiguration;
+
+/**
+ * @author Rajiv Singla
+ */
+@ActiveProfiles({AnalyticsProfile.DEV_PROFILE_NAME})
+@ContextConfiguration(classes = {AnalyticsWebTestConfig.class})
+public abstract class BaseAnalyticsWebSpringBootIT extends BaseAnalyticsSpringBootIT {
+
+ public static final String TEST_SUBSCRIBER_TOPIC_URL = "http://localhost:8080/events/SubTopic";
+ public static final String TEST_SUBSCRIBER_AAF_USERNAME = "USER";
+ public static final String TEST_SUBSCRIBER_AAF_PASSWORD = "PASSWORD";
+
+ public static final String TEST_SUBSCRIBER_CONSUMER_GROUP = "cg1";
+ public static final List<String> TEST_SUBSCRIBER_CONSUMER_IDS = Arrays.asList("c0", "c1");
+
+
+ public static final String TEST_PUBLISHER_TOPIC_URL = "http://localhost:8080/events/PubTopic";
+
+}
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebTest.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebTest.java
new file mode 100644
index 0000000..4258973
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/BaseAnalyticsWebTest.java
@@ -0,0 +1,28 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web;
+
+import org.onap.dcae.analytics.test.BaseAnalyticsUnitTest;
+
+/**
+ * @author Rajiv Singla
+ */
+public abstract class BaseAnalyticsWebTest extends BaseAnalyticsUnitTest {
+}
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/DmaapMrFlowsIT.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/DmaapMrFlowsIT.java
new file mode 100644
index 0000000..b9c3d8e
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/DmaapMrFlowsIT.java
@@ -0,0 +1,53 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web;
+
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
+import org.onap.dcae.analytics.model.AnalyticsProfile;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.integration.channel.DirectChannel;
+import org.springframework.integration.channel.QueueChannel;
+import org.springframework.test.context.ActiveProfiles;
+
+/**
+ * @author Rajiv Singla
+ */
+@ActiveProfiles(value = {AnalyticsProfile.DMAAP_PROFILE_NAME})
+@Disabled
+class DmaapMrFlowsIT extends BaseAnalyticsWebSpringBootIT {
+
+ @Autowired
+ private QueueChannel mrSubscriberOutputChannel;
+ @Autowired
+ private DirectChannel mrPublisherInputChannel;
+
+ @Test
+ void mrPubSubFlows() {
+
+ try {
+ Thread.sleep(300_000);
+ } catch (InterruptedException e) {
+ logger.error("", e);
+ }
+ }
+
+
+}
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/AnalyticsWebTestConfig.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/AnalyticsWebTestConfig.java
new file mode 100644
index 0000000..b80be2c
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/AnalyticsWebTestConfig.java
@@ -0,0 +1,43 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web.config;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+import org.onap.dcae.analytics.model.util.json.AnalyticsModelJsonConversion;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+/**
+ * @author Rajiv Singla
+ */
+@Configuration
+@EnableAutoConfiguration
+@Import(value = {AnalyticsWebConfig.class, DmaapMrTestConfig.class})
+public class AnalyticsWebTestConfig {
+
+ @Bean
+ public ObjectMapper objectMapper() {
+ return AnalyticsModelJsonConversion.ANALYTICS_MODEL_OBJECT_MAPPER;
+ }
+
+}
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/DmaapMrTestConfig.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/DmaapMrTestConfig.java
new file mode 100644
index 0000000..9e884ea
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/config/DmaapMrTestConfig.java
@@ -0,0 +1,73 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web.config;
+
+import org.onap.dcae.analytics.model.AnalyticsProfile;
+import org.onap.dcae.analytics.web.BaseAnalyticsWebSpringBootIT;
+import org.onap.dcae.analytics.web.dmaap.MrPublisherPreferences;
+import org.onap.dcae.analytics.web.dmaap.MrSubscriberPreferences;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+import org.springframework.integration.channel.DirectChannel;
+import org.springframework.integration.channel.QueueChannel;
+import org.springframework.integration.dsl.IntegrationFlow;
+import org.springframework.integration.dsl.IntegrationFlows;
+import org.springframework.integration.handler.LoggingHandler;
+
+/**
+ * @author Rajiv Singla
+ */
+@Configuration
+@Profile({AnalyticsProfile.DMAAP_PROFILE_NAME})
+public class DmaapMrTestConfig {
+
+ @Bean
+ public MrSubscriberPreferences mrSubscriberPreferences() {
+ return new MrSubscriberPreferences(BaseAnalyticsWebSpringBootIT.TEST_SUBSCRIBER_TOPIC_URL, null,
+ null, BaseAnalyticsWebSpringBootIT.TEST_SUBSCRIBER_AAF_USERNAME,
+ BaseAnalyticsWebSpringBootIT.TEST_SUBSCRIBER_AAF_PASSWORD,
+ null, null, null,
+ BaseAnalyticsWebSpringBootIT.TEST_SUBSCRIBER_CONSUMER_GROUP,
+ BaseAnalyticsWebSpringBootIT.TEST_SUBSCRIBER_CONSUMER_IDS,
+ null, null, null);
+ }
+
+ @Bean
+ public MrPublisherPreferences mrPublisherPreferences() {
+ return new MrPublisherPreferences(BaseAnalyticsWebSpringBootIT.TEST_PUBLISHER_TOPIC_URL);
+ }
+
+ @Bean
+ public Integer processingBatchSize() {
+ return 1;
+ }
+
+
+ @Bean
+ public IntegrationFlow noOperationMrFlow(final QueueChannel mrSubscriberOutputChannel,
+ final DirectChannel mrPublisherInputChannel) {
+ return IntegrationFlows.from(mrSubscriberOutputChannel)
+ .log(LoggingHandler.Level.INFO)
+ .channel(mrPublisherInputChannel)
+ .get();
+ }
+
+}
diff --git a/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/spring/ConfigBindingServiceEnvironmentPostProcessorIT.java b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/spring/ConfigBindingServiceEnvironmentPostProcessorIT.java
new file mode 100644
index 0000000..d459212
--- /dev/null
+++ b/dcae-analytics/dcae-analytics-web/src/test/java/org/onap/dcae/analytics/web/spring/ConfigBindingServiceEnvironmentPostProcessorIT.java
@@ -0,0 +1,82 @@
+/*
+ * ================================================================================
+ * Copyright (c) 2018 AT&T 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.dcae.analytics.web.spring;
+
+import static org.onap.dcae.analytics.model.configbindingservice.ConfigBindingServiceConstants
+ .CONFIG_BINDING_SERVICE_ENV_VARIABLE_KEY;
+import static org.onap.dcae.analytics.model.configbindingservice.ConfigBindingServiceConstants
+ .CONFIG_BINDING_SERVICE_PROPERTIES_KEY;
+import static org.onap.dcae.analytics.model.configbindingservice.ConfigBindingServiceConstants
+ .CONSUL_HOST_ENV_VARIABLE_KEY;
+import static org.onap.dcae.analytics.model.configbindingservice.ConfigBindingServiceConstants
+ .SERVICE_NAME_ENV_VARIABLE_KEY;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
+import org.onap.dcae.analytics.model.AnalyticsProfile;
+import org.onap.dcae.analytics.web.BaseAnalyticsWebSpringBootIT;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.AbstractEnvironment;
+import org.springframework.core.env.Environment;
+import org.springframework.core.env.MapPropertySource;
+import org.springframework.core.env.PropertySource;
+import org.springframework.test.context.ActiveProfiles;
+
+/**
+ * @author Rajiv Singla
+ */
+@ActiveProfiles(value = {AnalyticsProfile.CONFIG_BINDING_SERVICE_PROFILE_NAME}, inheritProfiles = false)
+@Disabled
+class ConfigBindingServiceEnvironmentPostProcessorIT extends BaseAnalyticsWebSpringBootIT {
+
+ @BeforeAll
+ static void beforeAll() throws Exception {
+ // sets up environment variables for testing purposes
+ final HashMap<String, String> testEnvironmentVariables = new HashMap<>();
+ final String testConsulHostValue = "localhost";
+ final String testConfigBindingService = "config_binding_service";
+ final String testServiceName = "tca_dev";
+ testEnvironmentVariables.put(CONSUL_HOST_ENV_VARIABLE_KEY, testConsulHostValue);
+ testEnvironmentVariables.put(CONFIG_BINDING_SERVICE_ENV_VARIABLE_KEY, testConfigBindingService);
+ testEnvironmentVariables.put(SERVICE_NAME_ENV_VARIABLE_KEY, testServiceName);
+ setEnvironmentVariables(testEnvironmentVariables);
+ }
+
+ @Autowired
+ private Environment environment;
+
+ @Test
+ void postProcessEnvironment() {
+
+ final Map<String, Object> properties = new HashMap<>();
+ for (final PropertySource<?> propertySource : ((AbstractEnvironment) environment).getPropertySources()) {
+ if (propertySource.getName().equals(CONFIG_BINDING_SERVICE_PROPERTIES_KEY)) {
+ properties.putAll(((MapPropertySource) propertySource).getSource());
+ }
+ }
+ properties.forEach((key, value) -> logger.debug("{} -> {}", key, value));
+
+ }
+
+}