Merge of new rebased code
[appc.git] / appc-adapters / appc-dmaap-adapter / appc-dmaap-adapter-bundle / src / test / java / org / openecomp / appc / adapter / messaging / dmaap / TestDmaapProducing.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * openECOMP : APP-C
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights
6  *                                              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  * ============LICENSE_END=========================================================
20  */
21
22 package org.openecomp.appc.adapter.messaging.dmaap;
23
24
25 import org.junit.Assert;
26 import org.junit.BeforeClass;
27 import org.junit.Ignore;
28 import org.junit.Test;
29 import org.openecomp.appc.adapter.message.Producer;
30 import org.openecomp.appc.adapter.messaging.dmaap.http.HttpDmaapProducerImpl;
31 import org.openecomp.appc.adapter.messaging.dmaap.impl.DmaapProducerImpl;
32 import org.openecomp.appc.configuration.Configuration;
33 import org.openecomp.appc.configuration.ConfigurationFactory;
34
35 import java.util.Arrays;
36 import java.util.List;
37
38 /**
39  * Must have a DMaaP cluster or simulator up and running
40  * Update the hostname, topic, client properties in
41  * resources/org/openecomp/appc/default.properties
42  *
43  */
44 public class TestDmaapProducing {
45
46     private static Producer httpProducer;
47     private static Producer dmaapProducer;
48
49     @BeforeClass
50     public static void setUp() {
51
52         Configuration configuration = ConfigurationFactory.getConfiguration();
53
54         List<String> hosts = Arrays.asList(configuration.getProperty("poolMembers").split(","));
55         String topic = configuration.getProperty("topic.write");
56         String user = configuration.getProperty("dmaap.appc.username");
57         String password = configuration.getProperty("dmaap.appc.password");
58
59         dmaapProducer = new DmaapProducerImpl(hosts, topic,user,password);
60         httpProducer = new HttpDmaapProducerImpl(hosts, topic);
61         httpProducer.updateCredentials(user,password);
62     }
63
64     @Test
65     @Ignore
66     public void testHttpPostMessage() {
67         testPostMessage(httpProducer);
68     }
69
70     @Test
71     @Ignore
72     public void testPostMessages() {
73         testPostMessage(dmaapProducer);
74     }
75
76     private void testPostMessage(Producer producer) {
77         Assert.assertTrue(producer.post("partition", "{\"message\": \"Hello, world!\"}"));
78     }
79
80 }