Merge "JUnits for coverage"
[portal.git] / ecomp-portal-widget-ms / widget-ms / src / test / java / org / onap / portalapp / widget / service / impl / MicroserviceServiceImplTest.java
1 /*-
2  * ============LICENSE_START==========================================
3  * ONAP Portal
4  * ===================================================================
5  * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
6  * ===================================================================
7  *
8  * Unless otherwise specified, all software contained herein is licensed
9  * under the Apache License, Version 2.0 (the "License");
10  * you may not use this software except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *             http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  * Unless otherwise specified, all documentation contained herein is licensed
22  * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
23  * you may not use this documentation except in compliance with the License.
24  * You may obtain a copy of the License at
25  *
26  *             https://creativecommons.org/licenses/by/4.0/
27  *
28  * Unless required by applicable law or agreed to in writing, documentation
29  * distributed under the License is distributed on an "AS IS" BASIS,
30  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31  * See the License for the specific language governing permissions and
32  * limitations under the License.
33  *
34  * ============LICENSE_END============================================
35  *
36  * 
37  */
38 package org.onap.portalapp.widget.service.impl;
39
40
41 import static org.junit.Assert.assertEquals;
42 import static org.mockito.Mockito.when;
43
44 import org.hibernate.Criteria;
45 import org.hibernate.Session;
46 import org.hibernate.SessionFactory;
47 import org.hibernate.Transaction;
48 import org.hibernate.criterion.Restrictions;
49 import org.junit.Before;
50 import org.junit.Test;
51 import org.mockito.InjectMocks;
52 import org.mockito.Mock;
53 import org.mockito.MockitoAnnotations;
54 import org.onap.portalapp.widget.domain.MicroserviceData;
55 import org.onap.portalapp.widget.domain.MicroserviceParameter;
56
57 public class MicroserviceServiceImplTest {
58         
59         private static final String TEST="test";
60         @InjectMocks
61         MicroserviceServiceImpl microserviceServiceImpl;
62         
63         @Mock
64         Session session;
65         @Mock
66         SessionFactory sessionFactory;
67         @Mock
68         Transaction transaction;
69         @Mock
70         Criteria criteria;
71         
72         @Before
73         public void init() {
74             MockitoAnnotations.initMocks(this);
75         }
76         
77         @Test
78         public void testSaveMicroserivce() {
79                 MicroserviceData microserviceData=buildData();
80                 when(sessionFactory.openSession()).thenReturn(session);
81                 when(session.beginTransaction()).thenReturn(transaction);
82         Long data=      microserviceServiceImpl.saveMicroserivce(microserviceData);
83                 assertEquals(1l, data.longValue());
84                 
85         }
86         
87         @Test
88         public void testSaveMicroserivceException() {
89                 MicroserviceData microserviceData=buildData();
90                 when(sessionFactory.openSession()).thenReturn(session);
91         
92         Long data=      microserviceServiceImpl.saveMicroserivce(microserviceData);
93         assertEquals(1l, data.longValue());
94                 
95         }
96         
97         @Test
98         public void testSaveMicroserviceParameterException() {
99                 when(sessionFactory.openSession()).thenReturn(session);
100                 microserviceServiceImpl.saveMicroserviceParameter(new MicroserviceParameter());
101                 
102         }
103         
104         @Test(expected=NullPointerException.class)
105         public void testSaveMicroserviceParameter() {
106                 when(sessionFactory.openSession()).thenReturn(session);
107                 when(session.beginTransaction()).thenReturn(transaction);
108                 microserviceServiceImpl.saveMicroserviceParameter(new MicroserviceParameter());
109                 
110                 when(session.createCriteria(MicroserviceData.class)).thenReturn(criteria);
111                 when(criteria.add(Restrictions.eq("name", TEST))).thenReturn(criteria);
112                 when(criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY)).thenReturn(criteria);
113                 microserviceServiceImpl.getMicroserviceIdByName(TEST);
114                         
115         }
116         
117         
118         
119         public MicroserviceData buildData() {
120                 MicroserviceData microserviceData=new MicroserviceData();
121                 microserviceData.setId((long)1);
122                 microserviceData.setName(TEST);
123                 microserviceData.setActive(TEST);
124                 microserviceData.setDesc(TEST);
125                 microserviceData.setAppId((long)1);
126                 microserviceData.setUrl(TEST);
127                 microserviceData.setSecurityType(TEST);
128                 microserviceData.setUsername(TEST);
129                 microserviceData.setPassword(TEST);
130                 
131                 return microserviceData;
132         }
133
134 }