2 * ============LICENSE_START=======================================================
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
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.dbcapi.resources;
21 import org.onap.dmaap.dbcapi.model.*;
22 import org.onap.dmaap.dbcapi.service.*;
23 import static org.junit.Assert.*;
25 import org.junit.After;
26 import org.junit.Before;
27 import org.junit.Test;
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;
41 public class MR_ClusterResourceTest extends JerseyTest {
43 static DmaapObjectFactory factory = new DmaapObjectFactory();
46 protected Application configure() {
47 return new ResourceConfig( MR_ClusterResource.class );
50 private static final String fmt = "%24s: %s%n";
54 /* may conflict with test framework!
56 public void preTest() throws Exception {
60 public void tearDown() throws Exception {
66 public void GetTest() {
67 Response resp = target( "mr_clusters").request().get( Response.class );
68 System.out.println( "GET feed resp=" + resp.getStatus() );
70 assertTrue( resp.getStatus() == 200 );
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 );
82 public void PutTest() {
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 ) {
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 );
99 System.out.println( "POST MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity( String.class ) );
100 assertTrue( resp.getStatus() == 201 );
102 // now change a field
103 cluster.setHosts( h );
104 reqEntity = Entity.entity( cluster, MediaType.APPLICATION_JSON );
106 // update with incorrect key
107 resp = target( "mr_clusters")
108 .path( cluster.getFqdn())
110 .put( reqEntity, Response.class );
111 System.out.println( "PUT MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity(String.class));
112 assertTrue( resp.getStatus() == 404 );
114 // update with correct key
115 resp = target( "mr_clusters")
116 .path( cluster.getDcaeLocationName())
118 .put( reqEntity, Response.class );
119 System.out.println( "PUT MR_Cluster resp=" + resp.getStatus() + " " + resp.readEntity(String.class));
120 assertTrue( resp.getStatus() == 200 );