2 * ============LICENSE_START=======================================================
3 * Copyright (c) 2022 Huawei. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 * ============LICENSE_END=========================================================
20 package org.onap.dcae.analytics.web.config;
22 import org.junit.jupiter.api.Test;
23 import org.mockito.Mockito;
24 import org.onap.dcae.analytics.web.dmaap.MrSubscriberPollingAdvice;
25 import org.onap.dcae.analytics.web.dmaap.MrSubscriberPollingPreferences;
26 import org.onap.dcae.analytics.web.dmaap.MrSubscriberPreferences;
27 import org.springframework.http.HttpHeaders;
28 import org.springframework.integration.scheduling.PollerMetadata;
29 import org.springframework.integration.util.DynamicPeriodicTrigger;
32 import java.util.Arrays;
34 import static org.junit.jupiter.api.Assertions.assertNotNull;
35 import static org.junit.jupiter.api.Assertions.assertTrue;
37 public class DmaapPollerTestConfig {
40 public void mrSubscriberPollingAdviceTest () throws Exception {
41 URL proxyURL = new URL("http://localhost");
42 MrSubscriberPollingPreferences pollingPreferences = Mockito.mock(MrSubscriberPollingPreferences.class);
44 HttpHeaders headers = Mockito.mock(HttpHeaders.class);
45 MrSubscriberPreferences subscriberPreferences =
46 new MrSubscriberPreferences("http://localhost:8080",
47 "TestClientId", headers,
48 "TestUserName", "TestPassword",
49 proxyURL, true, false, "TestGroup",
50 Arrays.asList("TestId1", "TestId2"),
51 new Integer(4), new Integer(3), pollingPreferences);
53 DmaapPollerConfig dmaapPollerConfig = new DmaapPollerConfig();
54 DynamicPeriodicTrigger dynamicPeriodicTrigger = new DynamicPeriodicTrigger(1L);
55 MrSubscriberPollingAdvice mrSubscriberPollingAdvice = dmaapPollerConfig.mrSubscriberPollingAdvice(
56 dynamicPeriodicTrigger, subscriberPreferences);
57 assertNotNull(mrSubscriberPollingAdvice);
61 public void dynamicPeriodicTriggerTest () throws Exception {
62 URL proxyURL = new URL("http://localhost");
63 MrSubscriberPollingPreferences pollingPreferences = Mockito.mock(MrSubscriberPollingPreferences.class);
64 HttpHeaders headers = Mockito.mock(HttpHeaders.class);
65 MrSubscriberPreferences subscriberPreferences =
66 new MrSubscriberPreferences("http://localhost:8080",
67 "TestClientId", headers,
68 "TestUserName", "TestPassword",
69 proxyURL, true, false, "TestGroup",
70 Arrays.asList("TestId1", "TestId2"),
71 new Integer(4), new Integer(3), pollingPreferences);
73 DmaapPollerConfig dmaapPollerConfig = new DmaapPollerConfig();
74 DynamicPeriodicTrigger dynamicPeriodicTrigger = dmaapPollerConfig.dynamicPeriodicTrigger(subscriberPreferences);
75 assertTrue(dynamicPeriodicTrigger.isFixedRate());
79 public void pollerMetadataTest () throws Exception {
80 DmaapPollerConfig dmaapPollerConfig = new DmaapPollerConfig();
81 DynamicPeriodicTrigger dynamicPeriodicTrigger = new DynamicPeriodicTrigger(60000);
82 PollerMetadata pollerMetadata = dmaapPollerConfig.pollerMetadata(dynamicPeriodicTrigger);
83 assertNotNull(pollerMetadata);
87 public void defaultPollerTest () throws Exception {
88 DmaapPollerConfig dmaapPollerConfig = new DmaapPollerConfig();
89 PollerMetadata pollerMetadata = dmaapPollerConfig.defaultPoller();
90 assertNotNull(pollerMetadata);