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 com.att.nsa.cambria.beans;
22 import static org.junit.Assert.assertTrue;
24 import org.I0Itec.zkclient.ZkClient;
25 import org.I0Itec.zkclient.exception.ZkNoNodeException;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.junit.runner.RunWith;
29 import static org.mockito.Matchers.any;
31 import java.util.Properties;
33 import org.mockito.InjectMocks;
34 import org.mockito.Mock;
35 import org.mockito.MockitoAnnotations;
36 import org.powermock.api.mockito.PowerMockito;
37 import org.powermock.core.classloader.annotations.PrepareForTest;
38 import org.powermock.modules.junit4.PowerMockRunner;
40 import com.att.dmf.mr.CambriaApiException;
41 import org.apache.kafka.clients.admin.AdminClient;
43 import com.att.dmf.mr.beans.DMaaPKafkaMetaBroker;
44 import com.att.dmf.mr.constants.CambriaConstants;
45 import com.att.dmf.mr.metabroker.Topic;
46 import com.att.dmf.mr.metabroker.Broker1.TopicExistsException;
47 import com.att.nsa.configs.ConfigDb;
48 import com.att.nsa.configs.ConfigDbException;
49 import com.att.nsa.configs.ConfigPath;
52 @RunWith(PowerMockRunner.class)
53 @PrepareForTest({ AdminClient.class})
54 public class DMaaPKafkaMetaBrokerTest {
57 private DMaaPKafkaMetaBroker dMaaPKafkaMetaBroker;
61 private AdminClient fKafkaAdminClient;
63 private AdminClient client;
65 private ConfigDb configDb;
67 ConfigPath fBaseTopicData;
69 private ZkClient zkClient;
75 MockitoAnnotations.initMocks(this);
76 PowerMockito.mockStatic(AdminClient.class);
77 //PowerMockito.when(AdminClient.create (any(Properties.class) )).thenReturn(fKafkaAdminClient);
79 //PowerMockito.mockStatic(AdminUtils.class);
80 PowerMockito.when(configDb.parse("/topics")).thenReturn(fBaseTopicData);
86 public void testGetAlltopics() {
88 dMaaPKafkaMetaBroker.getAllTopics();
89 } catch (ConfigDbException e) {
90 // TODO Auto-generated catch block
97 public void testcreateTopic() {
99 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
100 } catch (CambriaApiException e) {
101 // TODO Auto-generated catch block
103 } catch (TopicExistsException e) {
104 // TODO Auto-generated catch block
106 } catch (Exception e) {
107 // TODO Auto-generatee.printStackTrace();
114 public void testcreateTopic_wrongPartition() {
117 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 0, 1, true);
118 } catch (CambriaApiException e) {
120 } catch (TopicExistsException e) {
121 // TODO Auto-generated catch block
123 } catch (Exception e) {
124 // TODO Auto-generatee.printStackTrace();
130 public void testcreateTopic_wrongReplica() {
133 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 0, true);
134 } catch (CambriaApiException e) {
136 } catch (TopicExistsException e) {
137 // TODO Auto-generated catch block
139 } catch (Exception e) {
140 // TODO Auto-generatee.printStackTrace();
146 public void testcreateTopic_error1() {
148 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
149 } catch (CambriaApiException e) {
151 } catch (TopicExistsException e) {
152 // TODO Auto-generated catch block
154 } catch (Exception e) {
161 public void testcreateTopic_error2() {
163 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
164 } catch (CambriaApiException e) {
166 } catch (TopicExistsException e) {
167 // TODO Auto-generated catch block
169 } catch (Exception e) {
175 public void testcreateTopic_error3() {
177 dMaaPKafkaMetaBroker.createTopic("testtopic", "testtopic", "admin", 1, 1, true);
178 } catch (CambriaApiException e) {
179 // TODO Auto-generated catch block
181 } catch (TopicExistsException e) {
184 } catch (Exception e) {
191 public void testDeleteTopic() {
193 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
194 } catch (CambriaApiException e) {
195 // TODO Auto-generated catch block
197 } catch (TopicExistsException e) {
198 // TODO Auto-generated catch block
200 } catch (Exception e) {
208 public void testDeleteTopic_error1() {
210 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
211 } catch (CambriaApiException e) {
213 } catch (TopicExistsException e) {
214 // TODO Auto-generated catch block
216 } catch (Exception e) {
223 public void testDeleteTopic_error2() {
225 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
226 } catch (CambriaApiException e) {
228 } catch (TopicExistsException e) {
229 // TODO Auto-generated catch block
231 } catch (Exception e) {
238 public void testDeleteTopic_error3() {
240 dMaaPKafkaMetaBroker.deleteTopic("testtopic");
241 } catch (CambriaApiException e) {
242 // TODO Auto-generated catch block
244 } catch (TopicExistsException e) {
246 } catch (Exception e) {