improve code coverage and update log directory
[vfc/nfvo/driver/vnfm/svnfm.git] / nokia / vnfmdriver / vfcadaptorservice / vfcadaptor / src / test / java / org / onap / vfc / nfvo / driver / vnfm / svnfm / catalog / impl / CatalogMgmrImplTest.java
1 /*
2  * Copyright 2016-2017, Nokia Corporation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.impl;
18
19 import static org.mockito.Mockito.when;
20
21 import java.io.IOException;
22 import java.util.ArrayList;
23 import java.util.HashMap;
24 import java.util.List;
25
26 import org.apache.http.client.ClientProtocolException;
27 import org.junit.Assert;
28 import org.junit.Before;
29 import org.junit.Test;
30 import org.mockito.InjectMocks;
31 import org.mockito.Mock;
32 import org.mockito.Mockito;
33 import org.mockito.MockitoAnnotations;
34 import org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.bo.CatalogQueryVnfResponse;
35 import org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.bo.entity.ImageInfo;
36 import org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.bo.entity.VnfInstanceInfo;
37 import org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.bo.entity.VnfPackageInfo;
38 import org.onap.vfc.nfvo.driver.vnfm.svnfm.common.bo.AdaptorEnv;
39 import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.CommonEnum;
40 import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.CommonEnum.Deletionpending;
41 import org.onap.vfc.nfvo.driver.vnfm.svnfm.http.client.HttpClientProcessorInf;
42 import org.onap.vfc.nfvo.driver.vnfm.svnfm.http.client.HttpResult;
43 import org.springframework.web.bind.annotation.RequestMethod;
44
45 import com.google.gson.Gson;
46
47 public class CatalogMgmrImplTest {
48         @InjectMocks
49         private CatalogMgmrImpl catalogMgmr;
50
51         @Mock
52         private HttpClientProcessorInf httpClientProcessor;
53         
54         private String vnfPackageId = "vnfPackageId_001";
55         
56         private Gson gson = new Gson();
57         
58         @Before
59         public void setUp() throws Exception {
60                 MockitoAnnotations.initMocks(this);
61                 AdaptorEnv env = new AdaptorEnv();
62                 catalogMgmr.setAdaptorEnv(env);
63                 MockitoAnnotations.initMocks(this);
64         }
65         
66         @Test
67         public void testQueryVnfPackage() throws ClientProtocolException, IOException
68         {
69                 CatalogQueryVnfResponse response = new CatalogQueryVnfResponse();
70                 List<VnfInstanceInfo> vnfInstanceInfos = new ArrayList<VnfInstanceInfo>();
71                 VnfInstanceInfo vnfInstanceInfo = new VnfInstanceInfo();
72                 vnfInstanceInfo.setVnfInstanceId("vnfInstanceId");
73                 vnfInstanceInfo.setVnfInstanceName("vnfInstanceName");
74                 vnfInstanceInfos.add(vnfInstanceInfo );
75                 
76                 
77                 response.setVnfInstanceInfo(vnfInstanceInfos);
78                 
79                 response.setCsarId("csarId");
80                 ImageInfo imageInfo = new ImageInfo();
81                 imageInfo.setFileName("fileName");
82                 imageInfo.setImageId("imageId");
83                 imageInfo.setIndex("index");
84                 imageInfo.setStatus("status");
85                 imageInfo.setTenant("tenant");
86                 imageInfo.setVimId("vimId");
87                 imageInfo.setVimUser("vimUser");
88                 response.setImageInfo(imageInfo);
89                 
90                 VnfPackageInfo packageInfo = new VnfPackageInfo();
91                 packageInfo.setDownloadUri("1.3.5.6");
92                 packageInfo.setName("name");
93                 packageInfo.setOnBoardState("onBoardState");
94                 packageInfo.setVnfdId("vnfdId");
95                 packageInfo.setVnfdProvider("vnfdProvider");
96                 packageInfo.setVnfdVersion("vnfdVersion");
97                 packageInfo.setVnfVersion("vnfVersion");
98                 packageInfo.setProvider("provider");
99                 packageInfo.setVnfdProvider("vnfdProvider");
100                 packageInfo.setVersion("version");
101                 Deletionpending deletionPending = CommonEnum.Deletionpending.fALSE;
102                 packageInfo.setDeletionPending(deletionPending );
103                 
104                 response.setPackageInfo(packageInfo );
105                 
106                 String json = gson.toJson(packageInfo);
107                 
108                 HttpResult httpResult = new HttpResult();
109                 httpResult.setContent(json);
110                 
111                 when(httpClientProcessor.process(Mockito.anyString(), Mockito.any(RequestMethod.class), Mockito.any(HashMap.class), Mockito.anyString())).thenReturn(httpResult);
112                 VnfPackageInfo packageInfo1 = catalogMgmr.queryVnfPackage(vnfPackageId);
113                 Assert.assertEquals("1.3.5.6", packageInfo.getDownloadUri());
114                 Assert.assertEquals("name", packageInfo.getName());
115                 Assert.assertEquals("onBoardState", packageInfo.getOnBoardState());
116                 Assert.assertEquals("vnfdId", packageInfo.getVnfdId());
117                 Assert.assertEquals("provider", packageInfo.getProvider());
118                 Assert.assertEquals("vnfdProvider", packageInfo.getVnfdProvider());
119                 Assert.assertEquals("vnfdVersion", packageInfo.getVnfdVersion());
120                 Assert.assertEquals("vnfVersion", packageInfo.getVnfVersion());
121                 Assert.assertEquals("version", packageInfo.getVersion());
122                 Assert.assertEquals(CommonEnum.Deletionpending.fALSE, packageInfo.getDeletionPending());
123                 
124                 Assert.assertEquals("csarId", response.getCsarId());
125                 Assert.assertEquals("fileName", response.getImageInfo().getFileName());
126                 Assert.assertEquals("imageId", response.getImageInfo().getImageId());
127                 Assert.assertEquals("index", response.getImageInfo().getIndex());
128                 Assert.assertEquals("status", response.getImageInfo().getStatus());
129                 Assert.assertEquals("tenant", response.getImageInfo().getTenant());
130                 Assert.assertEquals("vimId", response.getImageInfo().getVimId());
131                 Assert.assertEquals("vimUser", response.getImageInfo().getVimUser());
132                 Assert.assertEquals("vnfInstanceId", response.getVnfInstanceInfo().get(0).getVnfInstanceId());
133                 Assert.assertEquals("vnfInstanceName", response.getVnfInstanceInfo().get(0).getVnfInstanceName());
134         }
135
136 }