including missing files
[dmaap/dbcapi.git] / src / test / java / org / onap / dmaap / dbcapi / resource / MR_ClusterResourceTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * org.onap.dmaap
4  * ================================================================================
5  * Copyright (C) 2018 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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20 package org.onap.dmaap.dbcapi.resources;
21 import org.onap.dmaap.dbcapi.model.*;
22 import org.onap.dmaap.dbcapi.service.*;
23 import static org.junit.Assert.*;
24
25 import org.junit.After;
26 import org.junit.Before;
27 import org.junit.Test;
28 import java.util.*;
29 import java.sql.*;
30
31 import org.glassfish.jersey.test.JerseyTest;
32 import org.glassfish.jersey.server.ResourceConfig;
33 import javax.ws.rs.client.Entity;
34 import javax.ws.rs.core.Application;
35 import javax.ws.rs.core.Response;
36 import javax.ws.rs.core.MediaType;
37 import javax.ws.rs.Path;
38 import javax.ws.rs.GET;
39
40
41 public class MR_ClusterResourceTest extends JerseyTest {
42
43         static DmaapObjectFactory factory = new DmaapObjectFactory();
44
45         @Override
46         protected Application configure() {
47                 return new ResourceConfig( MR_ClusterResource.class );
48         }
49
50         private static final String  fmt = "%24s: %s%n";
51
52
53
54 /*  may conflict with test framework! 
55         @Before
56         public void preTest() throws Exception {
57         }
58
59         @After
60         public void tearDown() throws Exception {
61         }
62 */
63
64
65         @Test
66         public void GetTest() {
67                 Response resp = target( "mr_clusters").request().get( Response.class );
68                 System.out.println( "GET feed resp=" + resp.getStatus() );
69
70                 assertTrue( resp.getStatus() == 200 );
71         }
72         @Test
73         public void PostTest() {
74                 MR_Cluster cluster = factory.genMR_Cluster( "central" );
75                 Entity<MR_Cluster> reqEntity = Entity.entity( cluster, MediaType.APPLICATION_JSON );
76                 Response resp = target( "mr_clusters").request().post( reqEntity, Response.class );
77                 System.out.println( "POST MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity( String.class ) );
78                 assertTrue( resp.getStatus() == 201 );
79         }
80
81         @Test
82         public void PutTest() {
83 /*
84                 try {
85                         DcaeLocation loc = factory.genDcaeLocation( "central" );
86                         Entity<DcaeLocation> reqEntity = Entity.entity( loc, MediaType.APPLICATION_JSON );
87                         Response resp = target( "dcaeLocations").request().post( reqEntity, Response.class );
88                         System.out.println( "POST dcaeLocation resp=" + resp.getStatus() + " " + resp.readEntity( String.class ));
89                         assertTrue( resp.getStatus() == 201 );
90                 } catch (Exception e ) {
91                 }
92 */
93                 String h[] = {"host4", "host5", "host6" };
94                 MR_Cluster cluster = factory.genMR_Cluster( "edge" );
95                 Entity<MR_Cluster> reqEntity = Entity.entity( cluster, MediaType.APPLICATION_JSON );
96                 Response resp = target( "mr_clusters").request().post( reqEntity, Response.class );
97
98                 // first, add it 
99                 System.out.println( "POST MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity( String.class ) );
100                 assertTrue( resp.getStatus() == 201 );
101
102                 // now change a field
103                 cluster.setHosts( h );
104                 reqEntity = Entity.entity( cluster, MediaType.APPLICATION_JSON );
105
106                 // update with incorrect key
107                 resp = target( "mr_clusters")
108                                         .path( cluster.getFqdn())
109                                         .request()
110                                         .put( reqEntity, Response.class );
111                 System.out.println( "PUT MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity(String.class));
112                 assertTrue( resp.getStatus() == 404 );
113
114                 // update with correct key
115                 resp = target( "mr_clusters")
116                                         .path( cluster.getDcaeLocationName())
117                                         .request()
118                                         .put( reqEntity, Response.class );
119                 System.out.println( "PUT MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity(String.class));
120                 assertTrue( resp.getStatus() == 200 );
121         }
122
123
124
125
126 }
127