Springboot 2.0 upgrade
[so.git] / asdc-controller / src / test / java / org / onap / so / asdc / tenantIsolation / WatchdogDistributionTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 - 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
21 package org.onap.so.asdc.tenantIsolation;
22
23 import static org.junit.Assert.assertEquals;
24 import static org.mockito.ArgumentMatchers.any;
25 import static org.mockito.ArgumentMatchers.isA;
26 import static org.mockito.Mockito.doNothing;
27 import static org.mockito.Mockito.doReturn;
28 import static org.mockito.Mockito.times;
29 import static org.mockito.Mockito.verify;
30
31 import java.util.HashMap;
32
33 import org.junit.Before;
34 import org.junit.Rule;
35 import org.junit.Test;
36 import org.junit.rules.ExpectedException;
37 import org.mockito.Mock;
38 import org.mockito.MockitoAnnotations;
39 import org.onap.so.asdc.BaseTest;
40 import org.onap.so.client.aai.AAIResourcesClient;
41 import org.onap.so.client.aai.entities.uri.AAIResourceUri;
42 import org.onap.so.db.catalog.beans.Service;
43 import org.springframework.beans.factory.annotation.Autowired;
44
45 public class WatchdogDistributionTest extends BaseTest {
46         @Autowired
47         private WatchdogDistribution watchdogDistribution;
48         
49         @Mock
50         private AAIResourcesClient aaiResourceClient;
51         
52         private static final String SUCCESS_TEST = "watchdogTestStatusSuccess";
53         private static final String FAILURE_TEST = "watchdogTestStatusFailure";
54         private static final String TIMEOUT_TEST = "watchdogTestStatusTimeout";
55         private static final String INCOMPLETE_TEST = "watchdogTestStatusIncomplete";
56         private static final String EXCEPTION_TEST = "watchdogTestStatusException";
57         private static final String NULL_TEST = "watchdogTestStatusNull";
58         
59         @Rule
60         public ExpectedException expectedException = ExpectedException.none();
61         
62         @Before
63         public void before() {
64                 MockitoAnnotations.initMocks(this);
65         }
66         
67         @Test
68         public void getOverallDistributionStatusTimeoutTest() throws Exception {
69                 String status = watchdogDistribution.getOverallDistributionStatus(TIMEOUT_TEST);
70                 assertEquals(DistributionStatus.TIMEOUT.toString(), status);
71         }
72         
73         @Test
74         public void getOverallDistributionStatusSuccessTest() throws Exception {
75                 String status = watchdogDistribution.getOverallDistributionStatus(SUCCESS_TEST);
76                 assertEquals(DistributionStatus.SUCCESS.toString(), status);
77         }
78         
79         @Test
80         public void getOverallDistributionStatusFailureTest() throws Exception {
81                 String status = watchdogDistribution.getOverallDistributionStatus(FAILURE_TEST);
82                 assertEquals(DistributionStatus.FAILURE.toString(), status);
83         }
84         
85         @Test
86         public void getOverallDistributionStatusIncompleteTest() throws Exception {
87                 String status = watchdogDistribution.getOverallDistributionStatus(INCOMPLETE_TEST);
88                 assertEquals(DistributionStatus.INCOMPLETE.toString(), status);
89         }
90         
91         @Test
92         public void getOverallDistributionStatusInvalidComponentExceptionTest() throws Exception {
93                 expectedException.expect(Exception.class);
94                 watchdogDistribution.getOverallDistributionStatus(EXCEPTION_TEST);
95         }
96         
97         @Test
98         public void getOverallDistributionStatusNewStatusTest() throws Exception {
99                 String status = watchdogDistribution.getOverallDistributionStatus("newDistrubutionStatus");
100                 assertEquals(DistributionStatus.INCOMPLETE.toString(), status);
101         }
102         
103         @Test
104         public void getOverallDistributionStatusExceptionTest() throws Exception {
105                 expectedException.expect(Exception.class);
106                 watchdogDistribution.getOverallDistributionStatus(null);
107         }
108         
109         @Test
110         public void executePatchAAITest() throws Exception {            
111                 Service service = new Service();
112                 service.setModelInvariantUUID("9647dfc4-2083-11e7-93ae-92361f002671");
113                 
114                 doReturn(aaiResourceClient).when(watchdogDistributionSpy).getAaiClient();
115                 doNothing().when(aaiResourceClient).update(isA(AAIResourceUri.class), isA(HashMap.class));
116                 
117                 watchdogDistribution.executePatchAAI(SUCCESS_TEST, service.getModelInvariantUUID(), DistributionStatus.SUCCESS.toString());
118                 
119                 verify(aaiResourceClient, times(1)).update(any(AAIResourceUri.class), any(HashMap.class));
120         }
121         
122         @Test
123         public void executePatchAAINullDistrubutionIdTest() throws Exception {
124                 expectedException.expect(Exception.class);
125                 watchdogDistribution.executePatchAAI(null, "", DistributionStatus.SUCCESS.toString());
126         }
127         
128         @Test
129         public void executePatchAAINullServiceTest() throws Exception {
130                 expectedException.expect(Exception.class);
131                 watchdogDistribution.executePatchAAI(NULL_TEST, null, DistributionStatus.SUCCESS.toString());
132         }
133         
134         @Test
135         public void getSetAaiClientTest() {
136                 aaiResourceClient = watchdogDistribution.getAaiClient();
137                 watchdogDistribution.setAaiClient(aaiResourceClient);
138                 AAIResourcesClient aaiResourceClient2 = watchdogDistribution.getAaiClient();
139                 assertEquals(aaiResourceClient, aaiResourceClient2);
140         }
141 }