2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2021 China Mobile.
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.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
21 package org.onap.dcaegen2.kpi.dmaap;
23 import static org.mockito.Mockito.when;
25 import com.att.nsa.cambria.client.CambriaTopicManager;
26 import com.google.gson.Gson;
27 import com.google.gson.JsonObject;
29 import java.io.BufferedReader;
30 import java.io.FileReader;
31 import java.io.IOException;
32 import java.util.ArrayList;
33 import java.util.HashSet;
34 import java.util.List;
37 import org.junit.Before;
38 import org.junit.Test;
39 import org.junit.runner.RunWith;
40 import org.mockito.InjectMocks;
41 import org.mockito.Mock;
42 import org.mockito.Mockito;
43 import org.mockito.MockitoAnnotations;
44 import org.onap.dcaegen2.kpi.models.Configuration;
45 import org.springframework.boot.test.context.SpringBootTest;
46 import org.springframework.test.context.junit4.SpringRunner;
48 @RunWith(SpringRunner.class)
49 @SpringBootTest(classes = DmaapClientTest.class)
50 public class DmaapClientTest {
53 private CambriaTopicManager topicManager;
60 MockitoAnnotations.initMocks(this);
64 public void getAllTopicsTest() {
65 Set<String> topics = new HashSet<String>();
68 Configuration configuration = Configuration.getInstance();
69 List<String> list = new ArrayList<String>();
71 configuration.setDmaapServers(list);
72 configuration.setCg("cg");
73 configuration.setCid("cid");
74 configuration.setPollingInterval(30);
75 configuration.setPollingTimeout(100);
78 when(topicManager.getTopics()).thenReturn(topics);
80 client = Mockito.mock(DmaapClient.class);
82 Mockito.verify(client).initClient();
83 // Mockito.verifycreateAndConfigureTopics();
85 } catch (IOException e) {
91 public void startClientTest() {
93 Configuration configuration = Configuration.getInstance();
94 String configAllJson = readFromFile("src/test/resources/config_all.json");
96 JsonObject configAll = new Gson().fromJson(configAllJson, JsonObject.class);
98 JsonObject config = configAll.getAsJsonObject("config");
99 System.out.println(configuration);
100 configuration.updateConfigurationFromJsonObject(config);
101 DmaapClient client = new DmaapClient();
103 // Mockito.verify(client).startClient();
104 // Mockito.verifycreateAndConfigureTopics();
106 } catch (Exception e) {
111 private static String readFromFile(String file) {
113 try (BufferedReader bufferedReader = new BufferedReader(new FileReader(file))) {
114 content = bufferedReader.readLine();
116 while ((temp = bufferedReader.readLine()) != null) {
117 content = content.concat(temp);
119 content = content.trim();
120 } catch (Exception e) {