* slice-analysis-ms
* ================================================================================
* Copyright (C) 2020 Wipro Limited.
+ * Copyright (C) 2022 CTC, Inc.
* ==============================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
package org.onap.slice.analysis.ms.dmaap;
-import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
-import com.att.nsa.cambria.client.CambriaTopicManager;
import com.google.gson.Gson;
import com.google.gson.JsonObject;
import java.io.BufferedReader;
import java.io.FileReader;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
-import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.onap.slice.analysis.ms.models.Configuration;
+import org.powermock.api.mockito.PowerMockito;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@SpringBootTest(classes = DmaapClientTest.class)
public class DmaapClientTest {
- @Mock
- private CambriaTopicManager topicManager;
-
- @InjectMocks
- DmaapClient client;
-
- @Before
- public void setup() {
- MockitoAnnotations.initMocks(this);
- }
-
- @Test
- public void getAllTopicsTest() {
- Set<String> topics = new HashSet<String>();
- topics.add("topic1");
- topics.add("topic2");
- Configuration configuration = Configuration.getInstance();
- List<String> list = new ArrayList<String>();
- list.add("server");
- configuration.setDmaapServers(list);
- configuration.setCg("cg");
- configuration.setCid("cid");
- configuration.setPollingInterval(30);
- configuration.setPollingTimeout(100);
- configuration.setConfigDbService("sdnrService");
-
- try {
- when(topicManager.getTopics()).thenReturn(topics);
-
- client=Mockito.mock(DmaapClient.class);
- client.initClient();
- Mockito.verify(client).initClient();
- // Mockito.verifycreateAndConfigureTopics();
-
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void startClientTest() {
- try {
- Configuration configuration = Configuration.getInstance();
- String configAllJson = readFromFile("src/test/resources/config_all.json");
-
- JsonObject configAll = new Gson().fromJson(configAllJson, JsonObject.class);
-
- JsonObject config = configAll.getAsJsonObject("config");
- System.out.println(configuration);
- configuration.updateConfigurationFromJsonObject(config);
- DmaapClient client= new DmaapClient();
- client.initClient();
- //Mockito.verify(client).startClient();
- // Mockito.verifycreateAndConfigureTopics();
-
- } catch ( Exception e) {
- e.printStackTrace();
- }
- }
-
- private static String readFromFile(String file) {
- String content = "";
- try (BufferedReader bufferedReader = new BufferedReader(new FileReader(file))) {
- content = bufferedReader.readLine();
- String temp;
- while ((temp = bufferedReader.readLine()) != null) {
- content = content.concat(temp);
- }
- content = content.trim();
- } catch (Exception e) {
- content = null;
- }
- return content;
- }
+ @InjectMocks
+ DmaapClient client;
+
+ @Before
+ public void setup() {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void startClientTest() {
+ Configuration configuration = Configuration.getInstance();
+ String configAllJson = readFromFile("src/test/resources/config_all.json");
+
+ JsonObject configAll = new Gson().fromJson(configAllJson, JsonObject.class);
+
+ JsonObject config = configAll.getAsJsonObject("config");
+ System.out.println(configuration);
+ configuration.updateConfigurationFromJsonObject(config);
+ MRTopicMonitor mrTopicMonitor = Mockito.mock(MRTopicMonitor.class);
+ DmaapClient spy = PowerMockito.spy(client);
+ doReturn(mrTopicMonitor).when(spy).getMRTopicMonitor();
+ doNothing().when(mrTopicMonitor).start();
+ spy.initClient();
+ }
+
+ private static String readFromFile(String file) {
+ String content = "";
+ try (BufferedReader bufferedReader = new BufferedReader(new FileReader(file))) {
+ content = bufferedReader.readLine();
+ String temp;
+ while ((temp = bufferedReader.readLine()) != null) {
+ content = content.concat(temp);
+ }
+ content = content.trim();
+ } catch (Exception e) {
+ content = null;
+ }
+ return content;
+ }
}