f9fbe31992b401cadecf1d00a3081e626c9ad120
[so/adapters/so-cnf-adapter.git] /
1 package org.onap.so.adapters.cnf.service.statuscheck;
2
3 import org.junit.Assert;
4 import org.junit.Test;
5 import org.junit.runner.RunWith;
6 import org.mockito.InjectMocks;
7 import org.mockito.Mock;
8 import org.onap.so.adapters.cnf.client.MulticloudClient;
9 import org.onap.so.adapters.cnf.model.CheckInstanceRequest;
10 import org.onap.so.adapters.cnf.model.InstanceRequest;
11 import org.onap.so.adapters.cnf.model.statuscheck.K8sRbInstanceStatus;
12 import org.onap.so.adapters.cnf.model.statuscheck.StatusCheckResponse;
13 import org.onap.so.client.exception.BadResponseException;
14 import org.springframework.test.context.junit4.SpringRunner;
15
16 import java.util.ArrayList;
17 import java.util.List;
18
19 import static org.mockito.Mockito.mock;
20 import static org.mockito.Mockito.when;
21
22 @RunWith(SpringRunner.class)
23 public class SimpleStatusCheckServiceTest {
24
25     @InjectMocks
26     private SimpleStatusCheckService tested;
27
28     @Mock
29     private MulticloudClient instanceApi;
30
31
32     @Test
33     public void shouldReturnTrueStatusCheck() throws BadResponseException {
34         // given
35         String instanceId = "instanceId";
36         boolean isReady = true;
37         K8sRbInstanceStatus instanceStatus = mock(K8sRbInstanceStatus.class);
38         CheckInstanceRequest instanceIds = mock(CheckInstanceRequest.class);
39         List<InstanceRequest> instanceRequests = new ArrayList<>();
40         InstanceRequest instanceRequest = mock(InstanceRequest.class);
41         instanceRequests.add(instanceRequest);
42
43         // when
44         when(instanceIds.getInstances()).thenReturn(instanceRequests);
45         when(instanceRequest.getInstanceId()).thenReturn(instanceId);
46         when(instanceApi.getInstanceStatus(instanceId)).thenReturn(instanceStatus);
47         when(instanceStatus.isReady()).thenReturn(isReady);
48
49         // then
50         StatusCheckResponse actual = tested.statusCheck(instanceIds);
51
52         Assert.assertFalse(actual.getInstanceResponse().isEmpty());
53         Assert.assertEquals(1, actual.getInstanceResponse().size());
54         Assert.assertTrue(actual.getInstanceResponse().get(0).isStatus());
55         Assert.assertEquals(instanceId, actual.getInstanceResponse().get(0).getInstanceId());
56     }
57
58     @Test
59     public void shouldReturnFalseStatusCheck() throws BadResponseException {
60         // given
61         String instanceId = "instanceId";
62         boolean isReady = false;
63         K8sRbInstanceStatus instanceStatus = mock(K8sRbInstanceStatus.class);
64         CheckInstanceRequest instanceIds = mock(CheckInstanceRequest.class);
65         List<InstanceRequest> instanceRequests = new ArrayList<>();
66         InstanceRequest instanceRequest = mock(InstanceRequest.class);
67         instanceRequests.add(instanceRequest);
68
69         // when
70         when(instanceIds.getInstances()).thenReturn(instanceRequests);
71         when(instanceRequest.getInstanceId()).thenReturn(instanceId);
72         when(instanceApi.getInstanceStatus(instanceId)).thenReturn(instanceStatus);
73         when(instanceStatus.isReady()).thenReturn(isReady);
74
75         // then
76         StatusCheckResponse actual = tested.statusCheck(instanceIds);
77
78         Assert.assertFalse(actual.getInstanceResponse().isEmpty());
79         Assert.assertEquals(1, actual.getInstanceResponse().size());
80         Assert.assertFalse(actual.getInstanceResponse().get(0).isStatus());
81         Assert.assertEquals(instanceId, actual.getInstanceResponse().get(0).getInstanceId());
82     }
83 }