71ff2887749fe04ae8e0344d56820b7cb0bda28b
[policy/apex-pdp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
4  *  Modifications Copyright (C) 2019-2020 Nordix Foundation.
5  *  Modifications Copyright (C) 2020 Bell Canada. All rights reserved.
6  *  Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  * SPDX-License-Identifier: Apache-2.0
21  * ============LICENSE_END=========================================================
22  */
23
24 package org.onap.policy.apex.service.engine.parameters;
25
26 import static org.assertj.core.api.Assertions.assertThatThrownBy;
27 import static org.junit.Assert.assertEquals;
28 import static org.junit.Assert.assertTrue;
29
30 import java.util.Arrays;
31 import org.junit.Test;
32 import org.onap.policy.apex.service.engine.main.ApexCommandLineArguments;
33 import org.onap.policy.apex.service.engine.parameters.dummyclasses.SuperDooperCarrierTechnologyParameters;
34 import org.onap.policy.apex.service.engine.parameters.dummyclasses.SuperTokenDelimitedEventProtocolParameters;
35 import org.onap.policy.apex.service.parameters.ApexParameterHandler;
36 import org.onap.policy.apex.service.parameters.ApexParameters;
37 import org.onap.policy.apex.service.parameters.carriertechnology.CarrierTechnologyParameters;
38 import org.onap.policy.apex.service.parameters.eventhandler.EventHandlerPeeredMode;
39 import org.onap.policy.apex.service.parameters.eventprotocol.EventProtocolParameters;
40 import org.onap.policy.common.parameters.ParameterException;
41
42 /**
43  * Test for an empty parameter file.
44  *
45  * @author Liam Fallon (liam.fallon@ericsson.com)
46  */
47 public class SyncParameterTests {
48     @Test
49     public void testSyncBadNoSyncWithPeer() throws ParameterException {
50         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsNoSyncWithPeer.json"};
51         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
52
53         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
54             .hasMessage("validation error(s) on parameters from "
55                 + "\"src/test/resources/parameters/syncBadParamsNoSyncWithPeer.json\"\n"
56                 + "parameter group \"APEX_PARAMETERS\" type "
57                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
58                 + "parameter group has status INVALID\n"
59                 + "  parameter group map \"eventOutputParameters\" INVALID, "
60                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
61                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
62                 + ", specified peered mode \"SYNCHRONOUS\" "
63                 + "peer is illegal on eventOutputParameters \"SyncProducer0\" \n");
64     }
65
66     @Test
67     public void testSyncBadNotSyncWithPeer() throws ParameterException {
68         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsNotSyncWithPeer.json"};
69         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
70
71         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
72             .hasMessage("validation error(s) on parameters from "
73                 + "\"src/test/resources/parameters/syncBadParamsNotSyncWithPeer.json\"\n"
74                 + "parameter group \"APEX_PARAMETERS\" type "
75                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
76                 + "parameter group has status INVALID\n"
77                 + "  parameter group map \"eventOutputParameters\" INVALID, "
78                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
79                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
80                 + ", specified peered mode \"SYNCHRONOUS\" peer is illegal "
81                 + "on eventOutputParameters \"SyncProducer0\" \n");
82     }
83
84     @Test
85     public void testSyncBadSyncBadPeers() throws ParameterException {
86         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsBadPeers.json"};
87         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
88
89         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
90             .hasMessage("validation error(s) on parameters from "
91                 + "\"src/test/resources/parameters/syncBadParamsBadPeers.json\"\n"
92                 + "parameter group \"APEX_PARAMETERS\" type "
93                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
94                 + "parameter group has status INVALID\n"
95                 + "  parameter group map \"eventOutputParameters\" INVALID, "
96                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
97                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
98                 + ", peer \"SyncProducer1 for peered mode SYNCHRONOUS does not exist "
99                 + "or is not defined with the same peered mode\n" + "    parameter group \"SyncProducer1\" type "
100                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
101                 + ", peer \"SyncProducer0 for peered mode SYNCHRONOUS does not exist "
102                 + "or is not defined with the same peered mode\n"
103                 + "  parameter group map \"eventInputParameters\" INVALID, "
104                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer0\" type "
105                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
106                 + ", peer \"SyncConsumer1 for peered mode SYNCHRONOUS does not exist "
107                 + "or is not defined with the same peered mode\n" + "    parameter group \"SyncConsumer1\" type "
108                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
109                 + ", peer \"SyncConsumer0 for peered mode SYNCHRONOUS does not exist "
110                 + "or is not defined with the same peered mode\n");
111     }
112
113     @Test
114     public void testSyncBadSyncInvalidTimeout() throws ParameterException {
115         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsInvalidTimeout.json"};
116         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
117
118         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
119             .hasMessage("validation error(s) on parameters from "
120                 + "\"src/test/resources/parameters/syncBadParamsInvalidTimeout.json\"\n"
121                 + "parameter group \"APEX_PARAMETERS\" type "
122                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
123                 + "parameter group has status INVALID\n"
124                 + "  parameter group map \"eventOutputParameters\" INVALID, "
125                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
126                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID,"
127                 + " specified peered mode \"SYNCHRONOUS\" timeout value \"-10\" is illegal, "
128                 + "specify a non-negative timeout value in milliseconds\n"
129                 + "    parameter group \"SyncProducer1\" type "
130                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" "
131                 + "INVALID, specified peered mode \"SYNCHRONOUS\" timeout value \"-3\" is illegal, "
132                 + "specify a non-negative timeout value in milliseconds\n"
133                 + "  parameter group map \"eventInputParameters\" INVALID, "
134                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer0\" type "
135                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" "
136                 + "INVALID, specified peered mode \"SYNCHRONOUS\" timeout value \"-1\" is illegal, "
137                 + "specify a non-negative timeout value in milliseconds\n"
138                 + "    parameter group \"SyncConsumer1\" type "
139                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID,"
140                 + " specified peered mode \"SYNCHRONOUS\" timeout value \"-99999999\" is illegal, "
141                 + "specify a non-negative timeout value in milliseconds\n");
142     }
143
144     @Test
145     public void testSyncBadSyncBadTimeout() throws ParameterException {
146         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsBadTimeout.json"};
147         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
148
149         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
150             .hasMessage("validation error(s) on parameters from "
151                 + "\"src/test/resources/parameters/syncBadParamsBadTimeout.json\"\n"
152                 + "parameter group \"APEX_PARAMETERS\" type "
153                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" "
154                 + "INVALID, parameter group has status INVALID\n"
155                 + "  parameter group map \"eventOutputParameters\" INVALID, "
156                 + "parameter group map has status INVALID\n" + "    parameter group \"MyOtherProducer\" type "
157                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" "
158                 + "INVALID, specified peered mode \"SYNCHRONOUS\" "
159                 + "timeout is illegal on eventOutputParameters \"MyOtherProducer\"\n");
160     }
161
162     @Test
163     public void testSyncBadSyncUnpairedTimeout() throws ParameterException {
164         final String[] args = {"-p", "src/test/resources/parameters/syncBadParamsUnpairedTimeout.json"};
165         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
166
167         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
168             .hasMessage("validation error(s) on parameters from "
169                 + "\"src/test/resources/parameters/syncBadParamsUnpairedTimeout.json\"\n"
170                 + "parameter group \"APEX_PARAMETERS\" type "
171                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
172                 + "parameter group has status INVALID\n"
173                 + "  parameter group map \"eventOutputParameters\" INVALID, "
174                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
175                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
176                 + ", peer \"SyncConsumer0 for peered mode SYNCHRONOUS timeout 10 on event handler "
177                 + "\"SyncProducer0\" does not equal timeout 1 on event handler \"SyncConsumer0\"\n"
178                 + "    parameter group \"SyncProducer1\" type "
179                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
180                 + ", peer \"SyncConsumer1 for peered mode SYNCHRONOUS timeout 3 on event handler "
181                 + "\"SyncProducer1\" does not equal timeout 99999999 on event handler \"SyncConsumer1\"\n"
182                 + "  parameter group map \"eventInputParameters\" INVALID, "
183                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer0\" type "
184                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
185                 + ", peer \"SyncProducer0 for peered mode SYNCHRONOUS timeout 1 on event handler "
186                 + "\"SyncConsumer0\" does not equal timeout 10 on event handler \"SyncProducer0\"\n"
187                 + "    parameter group \"SyncConsumer1\" type "
188                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
189                 + ", peer \"SyncProducer1 for peered mode SYNCHRONOUS timeout 99999999 on event handler "
190                 + "\"SyncConsumer1\" does not equal timeout 3 on event handler \"SyncProducer1\"\n" + "");
191     }
192
193     @Test
194     public void testSyncGoodSyncGoodTimeoutProducer() throws ParameterException {
195         verifySyncGoodSyncGoodTimeout("src/test/resources/parameters/syncGoodParamsProducerTimeout.json");
196     }
197
198     @Test
199     public void testSyncGoodSyncGoodTimeoutConsumer() throws ParameterException {
200         verifySyncGoodSyncGoodTimeout("src/test/resources/parameters/syncGoodParamsConsumerTimeout.json");
201     }
202
203     @Test
204     public void testSyncGoodSyncGoodTimeoutBoth() throws ParameterException {
205         verifySyncGoodSyncGoodTimeout("src/test/resources/parameters/syncGoodParamsBothTimeout.json");
206     }
207
208     private void verifySyncGoodSyncGoodTimeout(String fileName) throws ParameterException {
209         final String[] args = {"-p", fileName};
210         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
211
212         final ApexParameters parameters = new ApexParameterHandler().getParameters(arguments);
213         assertEquals(fileName, 12345, parameters.getEventInputParameters().get("SyncConsumer0")
214                 .getPeerTimeout(EventHandlerPeeredMode.SYNCHRONOUS));
215         assertEquals(fileName, 1, parameters.getEventInputParameters().get("SyncConsumer1")
216                 .getPeerTimeout(EventHandlerPeeredMode.SYNCHRONOUS));
217         assertEquals(fileName, 12345, parameters.getEventOutputParameters().get("SyncProducer0")
218                 .getPeerTimeout(EventHandlerPeeredMode.SYNCHRONOUS));
219         assertEquals(fileName, 1, parameters.getEventOutputParameters().get("SyncProducer1")
220                 .getPeerTimeout(EventHandlerPeeredMode.SYNCHRONOUS));
221     }
222
223     @Test
224     public void testSyncUnusedConsumerPeers() throws ParameterException {
225         final String[] args = {"-p", "src/test/resources/parameters/syncUnusedConsumerPeers.json"};
226         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
227
228         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
229             .hasMessage("validation error(s) on parameters from "
230                 + "\"src/test/resources/parameters/syncUnusedConsumerPeers.json\"\n"
231                 + "parameter group \"APEX_PARAMETERS\" type "
232                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
233                 + "parameter group has status INVALID\n"
234                 + "  parameter group map \"eventOutputParameters\" INVALID, "
235                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer1\" type "
236                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" "
237                 + "INVALID, peer \"SyncConsumer0 for peered mode SYNCHRONOUS, "
238                 + "value \"SyncProducer0\" on peer \"SyncConsumer0\" "
239                 + "does not equal event handler \"SyncProducer1\"\n"
240                 + "  parameter group map \"eventInputParameters\" INVALID, "
241                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer1\" type "
242                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" "
243                 + "INVALID, peer \"SyncProducer1 for peered mode SYNCHRONOUS, "
244                 + "value \"SyncConsumer0\" on peer \"SyncProducer1\" "
245                 + "does not equal event handler \"SyncConsumer1\"\n");
246     }
247
248     @Test
249     public void testSyncMismatchedPeers() throws ParameterException {
250         final String[] args = {"-p", "src/test/resources/parameters/syncMismatchedPeers.json"};
251         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
252
253         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
254             .hasMessage("validation error(s) on parameters from "
255                 + "\"src/test/resources/parameters/syncMismatchedPeers.json\"\n"
256                 + "parameter group \"APEX_PARAMETERS\" type "
257                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
258                 + "parameter group has status INVALID\n"
259                 + "  parameter group map \"eventOutputParameters\" INVALID, "
260                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
261                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
262                 + ", peer \"SyncConsumer1 for peered mode SYNCHRONOUS, value \"SyncProducer1\" "
263                 + "on peer \"SyncConsumer1\" does not equal event handler \"SyncProducer0\"\n"
264                 + "    parameter group \"SyncProducer1\" type "
265                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
266                 + ", peer \"SyncConsumer0 for peered mode SYNCHRONOUS, value \"SyncProducer0\" "
267                 + "on peer \"SyncConsumer0\" does not equal event handler \"SyncProducer1\"\n"
268                 + "  parameter group map \"eventInputParameters\" INVALID, "
269                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer0\" type "
270                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
271                 + ", peer \"SyncProducer0 for peered mode SYNCHRONOUS, value \"SyncConsumer1\" "
272                 + "on peer \"SyncProducer0\" does not equal event handler \"SyncConsumer0\"\n"
273                 + "    parameter group \"SyncConsumer1\" type "
274                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
275                 + ", peer \"SyncProducer1 for peered mode SYNCHRONOUS, value \"SyncConsumer0\" "
276                 + "on peer \"SyncProducer1\" does not equal event handler \"SyncConsumer1\"\n");
277     }
278
279     @Test
280     public void testSyncUnusedProducerPeers() throws ParameterException {
281         final String[] args = {"-p", "src/test/resources/parameters/syncUnusedProducerPeers.json"};
282         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
283
284         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
285             .hasMessage("validation error(s) on parameters from "
286                 + "\"src/test/resources/parameters/syncUnusedProducerPeers.json\"\n"
287                 + "parameter group \"APEX_PARAMETERS\" type "
288                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
289                 + "parameter group has status INVALID\n"
290                 + "  parameter group map \"eventOutputParameters\" INVALID, "
291                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncProducer0\" type "
292                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
293                 + ", peer \"SyncConsumer0 for peered mode SYNCHRONOUS, value \"SyncProducer1\" on peer "
294                 + "\"SyncConsumer0\" does not equal event handler \"SyncProducer0\"\n"
295                 + "  parameter group map \"eventInputParameters\" INVALID, parameter group map has status "
296                 + "INVALID\n    parameter group \"SyncConsumer0\" type "
297                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID"
298                 + ", peer \"SyncProducer1 for peered mode SYNCHRONOUS, value \"SyncConsumer1\" on peer "
299                 + "\"SyncProducer1\" does not equal event handler \"SyncConsumer0\"\n");
300     }
301
302     @Test
303     public void testSyncMismatchedTimeout() throws ParameterException {
304         final String[] args = {"-p", "src/test/resources/parameters/syncMismatchedTimeout.json"};
305         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
306
307         assertThatThrownBy(() -> new ApexParameterHandler().getParameters(arguments))
308             .hasMessage("validation error(s) on parameters from "
309                 + "\"src/test/resources/parameters/syncMismatchedTimeout.json\"\n"
310                 + "parameter group \"APEX_PARAMETERS\" type "
311                 + "\"org.onap.policy.apex.service.parameters.ApexParameters\" INVALID, "
312                 + "parameter group has status INVALID\n" + "  parameter group map \"eventOutputParameters\" "
313                 + "INVALID, parameter group map has status INVALID\n"
314                 + "    parameter group \"SyncProducer1\" type "
315                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID,"
316                 + " peer \"SyncConsumer1 for peered mode SYNCHRONOUS timeout 456 "
317                 + "on event handler \"SyncProducer1\" does not equal timeout 123 "
318                 + "on event handler \"SyncConsumer1\"\n"
319                 + "  parameter group map \"eventInputParameters\" INVALID, "
320                 + "parameter group map has status INVALID\n" + "    parameter group \"SyncConsumer1\" type "
321                 + "\"org.onap.policy.apex.service.parameters.eventhandler.EventHandlerParameters\" INVALID,"
322                 + " peer \"SyncProducer1 for peered mode SYNCHRONOUS timeout 123 "
323                 + "on event handler \"SyncConsumer1\" does not equal timeout 456 "
324                 + "on event handler \"SyncProducer1\"\n");
325     }
326
327     @Test
328     public void testSyncGoodParametersTest() throws ParameterException {
329         final String[] args = {"-p", "src/test/resources/parameters/syncGoodParams.json"};
330         final ApexCommandLineArguments arguments = new ApexCommandLineArguments(args);
331
332         final ApexParameters parameters = new ApexParameterHandler().getParameters(arguments);
333
334         assertEquals("MyApexEngine", parameters.getEngineServiceParameters().getName());
335         assertEquals("0.0.1", parameters.getEngineServiceParameters().getVersion());
336         assertEquals(45, parameters.getEngineServiceParameters().getId());
337         assertEquals(19, parameters.getEngineServiceParameters().getInstanceCount());
338         assertEquals(65522, parameters.getEngineServiceParameters().getDeploymentPort());
339
340         final CarrierTechnologyParameters prodCT0 =
341                 parameters.getEventOutputParameters().get("SyncProducer0").getCarrierTechnologyParameters();
342         final EventProtocolParameters prodEP0 =
343                 parameters.getEventOutputParameters().get("SyncProducer0").getEventProtocolParameters();
344         final CarrierTechnologyParameters consCT0 =
345                 parameters.getEventInputParameters().get("SyncConsumer0").getCarrierTechnologyParameters();
346         final EventProtocolParameters consEP0 =
347                 parameters.getEventInputParameters().get("SyncConsumer0").getEventProtocolParameters();
348         final CarrierTechnologyParameters prodCT1 =
349                 parameters.getEventOutputParameters().get("SyncProducer1").getCarrierTechnologyParameters();
350         final EventProtocolParameters prodEP1 =
351                 parameters.getEventOutputParameters().get("SyncProducer1").getEventProtocolParameters();
352         final CarrierTechnologyParameters consCT1 =
353                 parameters.getEventInputParameters().get("SyncConsumer1").getCarrierTechnologyParameters();
354         final EventProtocolParameters consEP1 =
355                 parameters.getEventInputParameters().get("SyncConsumer1").getEventProtocolParameters();
356
357         assertEquals("FILE", prodCT0.getLabel());
358         assertEquals("JSON", prodEP0.getLabel());
359         assertEquals("FILE", consCT0.getLabel());
360         assertEquals("JSON", consEP0.getLabel());
361         assertEquals("FILE", prodCT1.getLabel());
362         assertEquals("JSON", prodEP1.getLabel());
363         assertEquals("SUPER_DOOPER", consCT1.getLabel());
364         assertEquals("SUPER_TOK_DEL", consEP1.getLabel());
365
366         assertTrue(consCT1 instanceof SuperDooperCarrierTechnologyParameters);
367         assertTrue(consEP1 instanceof SuperTokenDelimitedEventProtocolParameters);
368
369         final SuperDooperCarrierTechnologyParameters superDooperParameters =
370                 (SuperDooperCarrierTechnologyParameters) consCT1;
371         assertEquals("localhost:9092", superDooperParameters.getBootstrapServers());
372         assertEquals("all", superDooperParameters.getAcks());
373         assertEquals(0, superDooperParameters.getRetries());
374         assertEquals(16384, superDooperParameters.getBatchSize());
375         assertEquals(1, superDooperParameters.getLingerTime());
376         assertEquals(33554432, superDooperParameters.getBufferMemory());
377         assertEquals("default-group-id", superDooperParameters.getGroupId());
378         assertTrue(superDooperParameters.isEnableAutoCommit());
379         assertEquals(1000, superDooperParameters.getAutoCommitTime());
380         assertEquals(30000, superDooperParameters.getSessionTimeout());
381         assertEquals("apex-out", superDooperParameters.getProducerTopic());
382         assertEquals(100, superDooperParameters.getConsumerPollTime());
383         assertEquals("org.apache.superDooper.common.serialization.StringSerializer",
384                 superDooperParameters.getKeySerializer());
385         assertEquals("org.apache.superDooper.common.serialization.StringSerializer",
386                 superDooperParameters.getValueSerializer());
387         assertEquals("org.apache.superDooper.common.serialization.StringDeserializer",
388                 superDooperParameters.getKeyDeserializer());
389         assertEquals("org.apache.superDooper.common.serialization.StringDeserializer",
390                 superDooperParameters.getValueDeserializer());
391
392         final String[] consumerTopics = {"apex-in"};
393         assertEquals(Arrays.asList(consumerTopics), superDooperParameters.getConsumerTopicList());
394     }
395 }