2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
20 package org.onap.dmaap.mr.cambria.beans;
22 import static org.junit.Assert.assertTrue;
24 import com.att.nsa.configs.ConfigDb;
25 import com.att.nsa.configs.ConfigDbException;
26 import com.att.nsa.configs.ConfigPath;
27 import org.I0Itec.zkclient.ZkClient;
28 import org.apache.kafka.clients.admin.AdminClient;
29 import org.junit.Before;
30 import org.junit.Test;
31 import org.junit.runner.RunWith;
32 import org.mockito.InjectMocks;
33 import org.mockito.Mock;
34 import org.mockito.MockitoAnnotations;
35 import org.onap.dmaap.dmf.mr.CambriaApiException;
36 import org.onap.dmaap.dmf.mr.beans.DMaaPKafkaMetaBroker;
37 import org.onap.dmaap.dmf.mr.beans.DMaaPKafkaMetaBroker.KafkaTopic;
38 import org.onap.dmaap.dmf.mr.metabroker.Broker1.TopicExistsException;
39 import org.onap.dmaap.dmf.mr.metabroker.Topic;
40 import org.powermock.api.mockito.PowerMockito;
41 import org.powermock.core.classloader.annotations.PowerMockIgnore;
42 import org.powermock.core.classloader.annotations.PrepareForTest;
43 import org.powermock.modules.junit4.PowerMockRunner;
45 @PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "javax.management.*"})
46 @RunWith(PowerMockRunner.class)
47 @PrepareForTest({ AdminClient.class })
48 public class DMaaPKafkaMetaBrokerTest {
51 private DMaaPKafkaMetaBroker dMaaPKafkaMetaBroker;
55 private AdminClient fKafkaAdminClient;
57 private AdminClient client;
59 private ConfigDb configDb;
61 ConfigPath fBaseTopicData;
63 private ZkClient zkClient;
69 MockitoAnnotations.initMocks(this);
70 PowerMockito.mockStatic(AdminClient.class);
71 // PowerMockito.when(AdminClient.create (any(Properties.class)
72 // )).thenReturn(fKafkaAdminClient);
74 // PowerMockito.mockStatic(AdminUtils.class);
75 PowerMockito.when(configDb.parse("/topics")).thenReturn(fBaseTopicData);
80 public void testBrokercreate() {
81 DMaaPKafkaMetaBroker broker = new DMaaPKafkaMetaBroker();
86 public void testcreateTopicEntry() {
88 KafkaTopic kafkaTopic = new KafkaTopic("topics", configDb, fBaseTopicData);
89 dMaaPKafkaMetaBroker.createTopicEntry("name", "desc", "owner", true);
90 } catch (Exception e) {
97 public void testGetAlltopics() {
99 dMaaPKafkaMetaBroker.getAllTopics();
100 } catch (ConfigDbException e) {
101 // TODO Auto-generated catch block
108 public void testcreateTopic() {
110 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
111 } catch (CambriaApiException e) {
112 // TODO Auto-generated catch block
114 } catch (TopicExistsException e) {
115 // TODO Auto-generated catch block
117 } catch (Exception e) {
118 // TODO Auto-generatee.printStackTrace();
124 public void testcreateTopic_wrongPartition() {
127 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 0, 1, true);
128 } catch (CambriaApiException e) {
130 } catch (TopicExistsException e) {
131 // TODO Auto-generated catch block
133 } catch (Exception e) {
134 // TODO Auto-generatee.printStackTrace();
140 public void testcreateTopic_wrongReplica() {
143 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 0, true);
144 } catch (CambriaApiException e) {
146 } catch (TopicExistsException e) {
147 // TODO Auto-generated catch block
149 } catch (Exception e) {
150 // TODO Auto-generatee.printStackTrace();
156 public void testcreateTopic_error1() {
158 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
159 } catch (CambriaApiException e) {
161 } catch (TopicExistsException e) {
162 // TODO Auto-generated catch block
164 } catch (Exception e) {
171 public void testcreateTopic_error2() {
173 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
174 } catch (CambriaApiException e) {
176 } catch (TopicExistsException e) {
177 // TODO Auto-generated catch block
179 } catch (Exception e) {
185 public void testcreateTopic_error3() {
187 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
188 } catch (CambriaApiException e) {
189 // TODO Auto-generated catch block
191 } catch (TopicExistsException e) {
194 } catch (Exception e) {
201 public void testDeleteTopic() {
203 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
204 } catch (CambriaApiException e) {
205 // TODO Auto-generated catch block
207 } catch (TopicExistsException e) {
208 // TODO Auto-generated catch block
210 } catch (Exception e) {
218 public void testDeleteTopic_error1() {
220 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
221 } catch (CambriaApiException e) {
223 } catch (TopicExistsException e) {
224 // TODO Auto-generated catch block
226 } catch (Exception e) {
233 public void testDeleteTopic_error2() {
235 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
236 } catch (CambriaApiException e) {
238 } catch (TopicExistsException e) {
239 // TODO Auto-generated catch block
241 } catch (Exception e) {
248 public void testDeleteTopic_error3() {
250 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
251 } catch (CambriaApiException e) {
252 // TODO Auto-generated catch block
254 } catch (TopicExistsException e) {
256 } catch (Exception e) {