Increasing test coverage for vid.mso
[vid.git] / vid-app-common / src / test / java / org / onap / vid / mso / MsoUtilTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * VID
4  * ================================================================================
5  * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
6  * Modifications Copyright (C) 2019 Nokia. 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  * ============LICENSE_END=========================================================
20  */
21
22 package org.onap.vid.mso;
23
24 import io.joshworks.restclient.http.HttpResponse;
25 import org.apache.http.HttpResponseFactory;
26 import org.apache.http.entity.StringEntity;
27 import org.apache.http.impl.DefaultHttpResponseFactory;
28 import org.apache.http.message.BasicStatusLine;
29 import org.testng.annotations.Test;
30
31 import static org.apache.http.HttpStatus.SC_OK;
32 import static org.apache.http.HttpVersion.HTTP_1_1;
33 import static org.assertj.core.api.Assertions.assertThat;
34
35 public class MsoUtilTest {
36
37     @Test
38     public void shouldWrapRestObject() {
39         // given
40         String entity = "entity";
41         RestObject<String> restObject = new RestObject<>();
42         restObject.set(entity);
43         restObject.setStatusCode(SC_OK);
44         // when
45         MsoResponseWrapper result = MsoUtil.wrapResponse(restObject);
46         // then
47         assertThat(result.getEntity()).isEqualTo(entity);
48         assertThat(result.getStatus()).isEqualTo(SC_OK);
49     }
50
51     @Test
52     public void shouldWrapHttpResponse() throws Exception {
53         // given
54         HttpResponse<String> httpResponse = createTestHttpResponse(SC_OK, null);
55         // when
56         MsoResponseWrapper result = MsoUtil.wrapResponse(httpResponse);
57         // then
58         assertThat(result.getEntity()).isEqualTo(null);
59         assertThat(result.getStatus()).isEqualTo(SC_OK);
60     }
61
62     @Test
63     public void shouldWrapHttpResponseWithEntity() throws Exception {
64         // given
65         String entity = "entity";
66         HttpResponse<String> httpResponse = createTestHttpResponse(SC_OK, entity);
67         // when
68         MsoResponseWrapper result = MsoUtil.wrapResponse(httpResponse);
69         // then
70         assertThat(result.getEntity()).isEqualTo(entity);
71         assertThat(result.getStatus()).isEqualTo(SC_OK);
72     }
73
74     private HttpResponse<String> createTestHttpResponse(int statusCode, String entity) throws Exception {
75         HttpResponseFactory factory = new DefaultHttpResponseFactory();
76         org.apache.http.HttpResponse response = factory.newHttpResponse(new BasicStatusLine(HTTP_1_1, statusCode, null), null);
77         if (entity != null) {
78             response.setEntity(new StringEntity(entity));
79         }
80         return new HttpResponse<>(response, String.class, null);
81     }
82 }