2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2019 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=========================================================
21 package org.openecomp.sdc.be.resources.impl;
23 import fj.data.Either;
24 import mockit.Deencapsulation;
25 import org.junit.Before;
26 import org.junit.Test;
27 import org.mockito.InjectMocks;
28 import org.mockito.Mock;
29 import org.mockito.Mockito;
30 import org.mockito.MockitoAnnotations;
31 import org.openecomp.sdc.be.dao.api.ICatalogDAO;
32 import org.openecomp.sdc.be.dao.api.ResourceUploadStatus;
33 import org.openecomp.sdc.be.resources.data.ESArtifactData;
34 import org.openecomp.sdc.be.resources.exception.ResourceDAOException;
35 import org.openecomp.sdc.be.utils.DAOConfDependentTest;
37 public class ResourceUploaderTest extends DAOConfDependentTest{
40 ResourceUploader testSubject;
43 ICatalogDAO resourceDAO;
46 public void setUpMocks() throws Exception {
47 MockitoAnnotations.initMocks(this);
51 public void testCtor() throws Exception {
52 new ResourceUploader();
53 ICatalogDAO resourcetDAO = Mockito.mock(ICatalogDAO.class);
54 new ResourceUploader(resourcetDAO);
58 public void testInit() throws Exception {
64 public void testGetResourceDAO() throws Exception {
68 result = testSubject.getResourceDAO();
72 public void testSetResourceDAO() throws Exception {
73 ICatalogDAO resourceDAO = null;
76 testSubject.setResourceDAO(resourceDAO);
80 public void testSaveArtifact() throws Exception {
81 ESArtifactData artifactData = new ESArtifactData();
82 artifactData.setId("mock");
83 boolean isReload = false;
84 ResourceUploadStatus result;
86 Either<ESArtifactData, ResourceUploadStatus> value = Either.left(new ESArtifactData());
87 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
90 result = testSubject.saveArtifact(artifactData, isReload);
94 public void testSaveArtifact2() throws Exception {
95 ESArtifactData artifactData = new ESArtifactData();
96 artifactData.setId("mock");
97 boolean isReload = true;
98 ResourceUploadStatus result;
100 Either<ESArtifactData, ResourceUploadStatus> value = Either.left(new ESArtifactData());
101 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
104 result = testSubject.saveArtifact(artifactData, isReload);
108 public void testSaveArtifactFailed() throws Exception {
109 ESArtifactData artifactData = new ESArtifactData();
110 artifactData.setId("mock");
111 boolean isReload = false;
112 ResourceUploadStatus result;
114 Either<ESArtifactData, ResourceUploadStatus> value = Either.right(ResourceUploadStatus.ALREADY_EXIST);
115 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
118 result = testSubject.saveArtifact(artifactData, isReload);
122 public void testSaveArtifactFailedException() throws Exception {
123 ESArtifactData artifactData = new ESArtifactData();
124 artifactData.setId("mock");
125 boolean isReload = false;
126 ResourceUploadStatus result;
128 Either<ESArtifactData, ResourceUploadStatus> value = Either.right(ResourceUploadStatus.ALREADY_EXIST);
129 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
130 Mockito.doThrow(new ResourceDAOException("mock")).when(resourceDAO).writeArtifact(Mockito.any());
133 result = testSubject.saveArtifact(artifactData, isReload);
137 public void testSaveArtifactFailedDAONull() throws Exception {
138 ESArtifactData artifactData = new ESArtifactData();
139 boolean isReload = false;
140 ResourceUploadStatus result;
143 ResourceUploader resourceUploader = new ResourceUploader(null);
144 result = resourceUploader.saveArtifact(artifactData, isReload);
148 public void testUpdateArtifact() throws Exception {
149 ESArtifactData artifactUpdateData = new ESArtifactData();
150 artifactUpdateData.setId("mock");
151 ResourceUploadStatus result;
153 Either<ESArtifactData, ResourceUploadStatus> value = Either.left(new ESArtifactData());
154 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
157 result = testSubject.updateArtifact(artifactUpdateData);
161 public void testUpdateArtifactNotFound() throws Exception {
162 ESArtifactData artifactUpdateData = new ESArtifactData();
163 artifactUpdateData.setId("mock");
164 ResourceUploadStatus result;
166 Either<ESArtifactData, ResourceUploadStatus> value = Either.right(ResourceUploadStatus.NOT_EXIST);
167 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
170 result = testSubject.updateArtifact(artifactUpdateData);
174 public void testUpdateArtifactException() throws Exception {
175 ESArtifactData artifactUpdateData = new ESArtifactData();
176 artifactUpdateData.setId("mock");
177 ResourceUploadStatus result;
179 Either<ESArtifactData, ResourceUploadStatus> value = Either.left(new ESArtifactData());
180 Mockito.when(resourceDAO.getArtifact(Mockito.anyString())).thenReturn(value);
181 Mockito.doThrow(new ResourceDAOException("mock")).when(resourceDAO).writeArtifact(Mockito.any());
184 result = testSubject.updateArtifact(artifactUpdateData);
188 public void testUpdateArtifactDAONull() throws Exception {
189 ESArtifactData artifactUpdateData = new ESArtifactData();
190 ResourceUploadStatus result;
193 ResourceUploader resourceUploader = new ResourceUploader();
194 result = resourceUploader.updateArtifact(artifactUpdateData);
198 public void testGetArtifact() throws Exception {
200 Either<ESArtifactData, ResourceUploadStatus> result;
203 result = testSubject.getArtifact(id);
207 public void testGetArtifactNull() throws Exception {
209 Either<ESArtifactData, ResourceUploadStatus> result;
212 ResourceUploader resourceUploader = new ResourceUploader();
213 result = resourceUploader.getArtifact(id);
217 public void testDeleteArtifact() throws Exception {
221 testSubject.deleteArtifact(id);
225 public void testUpdateArtifact_1() throws Exception {
226 ESArtifactData artifactUpdateData = new ESArtifactData();
227 ESArtifactData existData = new ESArtifactData();
228 ResourceUploadStatus result;
231 result = Deencapsulation.invoke(testSubject, "updateArtifact",
232 artifactUpdateData, existData);
236 public void testUpdateData() throws Exception {
237 ESArtifactData artifactUpdateData = new ESArtifactData();
238 ESArtifactData existData = new ESArtifactData();
241 Deencapsulation.invoke(testSubject, "updateData", artifactUpdateData, existData);
245 public void testDeleteAllArtifacts() throws Exception {
247 testSubject.deleteAllArtifacts();