Fixed health check issue
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / portal / service / FunctionalMenuServiceImplTest.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.portal.service;
39
40 import static org.junit.Assert.assertEquals;
41
42 import java.util.ArrayList;
43 import java.util.HashMap;
44 import java.util.List;
45 import java.util.Map;
46
47 import org.apache.commons.lang3.StringUtils;
48 import org.hibernate.Criteria;
49 import org.hibernate.Query;
50 import org.hibernate.SQLQuery;
51 import org.hibernate.Session;
52 import org.hibernate.SessionFactory;
53 import org.hibernate.Transaction;
54 import org.hibernate.criterion.Criterion;
55 import org.hibernate.criterion.Restrictions;
56 import org.junit.Before;
57 import org.junit.Test;
58 import org.junit.runner.RunWith;
59 import org.mockito.InjectMocks;
60 import org.mockito.Matchers;
61 import org.mockito.Mock;
62 import org.mockito.Mockito;
63 import org.mockito.MockitoAnnotations;
64 import org.onap.portalapp.portal.core.MockEPUser;
65 import org.onap.portalapp.portal.domain.EPApp;
66 import org.onap.portalapp.portal.domain.EPUser;
67 import org.onap.portalapp.portal.domain.FunctionalMenuItemWithAppID;
68 import org.onap.portalapp.portal.transport.BusinessCardApplicationRole;
69 import org.onap.portalapp.portal.transport.FavoritesFunctionalMenuItem;
70 import org.onap.portalapp.portal.transport.FavoritesFunctionalMenuItemJson;
71 import org.onap.portalapp.portal.transport.FieldsValidator;
72 import org.onap.portalapp.portal.transport.FunctionalMenuItem;
73 import org.onap.portalapp.portal.transport.FunctionalMenuItemWithRoles;
74 import org.onap.portalapp.portal.transport.FunctionalMenuRole;
75 import org.onap.portalapp.portal.utils.EPCommonSystemProperties;
76 import org.onap.portalsdk.core.service.DataAccessService;
77 import org.onap.portalsdk.core.util.SystemProperties;
78 import org.powermock.api.mockito.PowerMockito;
79 import org.powermock.core.classloader.annotations.PrepareForTest;
80 import org.powermock.modules.junit4.PowerMockRunner;
81
82 @RunWith(PowerMockRunner.class)
83 @PrepareForTest({SystemProperties.class, EPCommonSystemProperties.class, StringUtils.class})
84 public class FunctionalMenuServiceImplTest {
85
86         @Mock
87         FunctionalMenuService functionalMenuService;
88         
89         @Mock
90         DataAccessService dataAccessService;
91         
92         @Mock
93         Session session;
94         
95         @Mock
96         private SessionFactory sessionFactory;
97         
98         @Mock
99         Criteria criteria;
100                 
101         @Before
102         public void setup() {
103                 MockitoAnnotations.initMocks(this);
104         }
105         
106     @InjectMocks
107         FunctionalMenuServiceImpl functionalMenuServiceImpl= new FunctionalMenuServiceImpl();
108         
109     MockEPUser mockUser = new MockEPUser();
110     
111         @Test
112         public void assignHelpURLsTest(){
113                 List<FunctionalMenuItem> menuItems = new ArrayList<FunctionalMenuItem>();
114                 FunctionalMenuItem functionalMenuItem1 = new FunctionalMenuItem();
115                 functionalMenuItem1.text = "Contact Us";
116                 FunctionalMenuItem functionalMenuItem2 = new FunctionalMenuItem();
117                 functionalMenuItem2.text = "Get Access";
118                 FunctionalMenuItem functionalMenuItem3 = new FunctionalMenuItem();
119                 functionalMenuItem3.text = "User Guide";                
120                 menuItems.add(functionalMenuItem1);
121                 menuItems.add(functionalMenuItem2);
122                 menuItems.add(functionalMenuItem3);
123                 
124                 PowerMockito.mockStatic(SystemProperties.class);
125                 Mockito.when(SystemProperties.getProperty(EPCommonSystemProperties.USER_GUIDE_URL)).thenReturn("http://todo_enter_user_guide_link");
126 //              Mockito.doNothing().when(functionalMenuServiceImpl).assignHelpURLs(menuItems);
127                 functionalMenuServiceImpl.assignHelpURLs(menuItems);
128         }
129         
130         @Test
131         public void getFunctionalMenuItemsTest(){
132                 String sql = "SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn, r.app_id FROM fn_menu_functional m, "
133                                 + "fn_menu_functional_roles r WHERE m.menu_id = r.menu_id  AND UPPER(m.active_yn) = 'Y'  AND r.role_id != '900'  "
134                                 + "UNION  SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn,-1 app_id  FROM fn_menu_functional m  "
135                                 + "WHERE m.url=''  AND UPPER(m.active_yn) = 'Y'";
136                  List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
137                  List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
138                  
139                  Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
140                  
141                  actualResult = functionalMenuServiceImpl.getFunctionalMenuItems(true);
142                  assertEquals(actualResult, expectedResult);
143         }
144         
145         @Test
146         public void getFunctionalMenuItemsNegativeTest(){
147                 String sql = "SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn, r.app_id FROM fn_menu_functional m, "
148                                 + "fn_menu_functional_roles r WHERE m.menu_id = r.menu_id  AND UPPER(m.active_yn) = 'Y'  AND r.role_id != '900'  "
149                                 + "UNION  SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn,-1 app_id  FROM fn_menu_functional m  "
150                                 + "WHERE m.url=''  AND UPPER(m.active_yn) = 'Y'";
151                  List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
152                  List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
153                  
154                  Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
155                  
156                  actualResult = functionalMenuServiceImpl.getFunctionalMenuItems(false);
157                  assertEquals(actualResult, expectedResult);
158         }
159         
160         @Test
161         public void getFunctionalMenuItemsForNotificationTreeTest(){
162                 String sql = "SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn, r.app_id FROM fn_menu_functional m, fn_menu_functional_roles r "
163                                 + "WHERE m.menu_id = r.menu_id  AND UPPER(m.active_yn) = 'Y'  AND r.role_id != '900'  UNION  SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id,"
164                                 + " m.url, m.active_yn,-1 app_id  FROM fn_menu_functional m  WHERE m.url=''  AND UPPER(m.active_yn) = 'Y'";
165                  List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
166                  List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
167                  
168                  Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
169                  
170                  actualResult = functionalMenuServiceImpl.getFunctionalMenuItemsForNotificationTree(true);
171                  assertEquals(actualResult, expectedResult);
172                 
173         }
174         
175         @Test
176         public void getFunctionalMenuItemsForNotificationNegativeTreeTest(){
177                 String sql = "SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn, r.app_id FROM fn_menu_functional m, fn_menu_functional_roles r "
178                                 + "WHERE m.menu_id = r.menu_id  AND UPPER(m.active_yn) = 'Y'  AND r.role_id != '900'  UNION  SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id,"
179                                 + " m.url, m.active_yn,-1 app_id  FROM fn_menu_functional m  WHERE m.url=''  AND UPPER(m.active_yn) = 'Y'";
180                  List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
181                  List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
182                  
183                  Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
184                  
185                  actualResult = functionalMenuServiceImpl.getFunctionalMenuItemsForNotificationTree(false);
186                  assertEquals(actualResult, expectedResult);            
187         }
188         
189         @Test
190         public void getFunctionalMenuItemsForAppTest(){
191                 String sql = "SELECT DISTINCT m1.menu_id, m1.column_num, m1.text, m1.parent_menu_id, m1.url, m.active_yn  "
192                                 + "FROM fn_menu_functional m, fn_menu_functional m1, fn_menu_functional_ancestors a, fn_menu_functional_roles mr  "
193                                 + "WHERE  mr.app_id='1'  AND mr.menu_id = m.menu_id  AND UPPER(m.active_yn) = 'Y' AND UPPER(m1.active_yn) ='Y' AND a.menu_id = m.menu_id  "
194                                 + "AND a.ancestor_menu_id = m1.menu_id";
195                 Integer appId = 1;
196                 List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
197                 List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
198                  
199                  Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
200                  
201                  actualResult = functionalMenuServiceImpl.getFunctionalMenuItemsForApp(appId);
202                  assertEquals(actualResult, expectedResult);
203         }
204         
205         @Test
206         public void getFunctionalMenuItemsForUserTest(){
207                 String orgUserId = "test";
208                 String sql = "SELECT DISTINCT m1.menu_id, m1.column_num, m1.text, m1.parent_menu_id, m1.url, m.active_yn  "
209                                 + "FROM fn_menu_functional m, fn_menu_functional m1, fn_menu_functional_ancestors a,  fn_menu_functional_roles mr, fn_user u , fn_user_role ur  "
210                                 + "WHERE  u.org_user_id='test'  AND u.user_id = ur.user_id  AND ur.app_id = mr.app_id  AND (ur.role_id = mr.role_id      OR ur.role_id = '999')  "
211                                 + "AND m.menu_id = mr.menu_id  AND UPPER(m.active_yn) = 'Y' AND UPPER(m1.active_yn) ='Y'  AND a.menu_id = m.menu_id  "
212                                 + "AND a.ancestor_menu_id = m1.menu_id  UNION  select m1.menu_id, m1.column_num, m1.text, m1.parent_menu_id, m1.url, m1.active_yn  "
213                                 + "FROM fn_menu_functional m, fn_menu_functional_roles mr, fn_menu_functional m1,  fn_menu_functional_ancestors a  where a.menu_id = m.menu_id  AND a.ancestor_menu_id = m1.menu_id  AND m.menu_id != m1.menu_id  AND m.menu_id = mr.menu_id  AND mr.role_id = '900'  AND UPPER(m.active_yn) = 'Y' AND UPPER(m1.active_yn) ='Y'  UNION  SELECT m.menu_id, m.column_num, m.text, m.parent_menu_id, m.url, m.active_yn  FROM fn_menu_functional m  WHERE m.text in ('Favorites','Get Access','Contact Us','Support','User Guide','Help')";
214                 List<FunctionalMenuItem> actualResult = new ArrayList<FunctionalMenuItem>();
215                 List<FunctionalMenuItem> expectedResult = new ArrayList<FunctionalMenuItem>();
216                  
217                 Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(expectedResult);
218                  
219                 actualResult = functionalMenuServiceImpl.getFunctionalMenuItemsForUser(orgUserId);
220                 assertEquals(actualResult, expectedResult);             
221         }
222         
223         @Test
224         public void getFunctionalMenuItemDetailsTest(){
225                 Long menuid = 1L;
226                 String sql = "SELECT * FROM fn_menu_functional_roles WHERE menu_id = '1'";
227                 FunctionalMenuItem actualResult = null;
228                 FunctionalMenuItem expectedResult = null;
229                 List<FunctionalMenuRole> roleItems = new ArrayList<FunctionalMenuRole>();
230                 FunctionalMenuRole functionalMenuRole = new FunctionalMenuRole();
231                 roleItems.add(functionalMenuRole);
232                 Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuItemWithAppID.class, null)).thenReturn(roleItems);             
233                 actualResult = functionalMenuServiceImpl.getFunctionalMenuItemDetails(menuid);
234                 assertEquals(actualResult, expectedResult);             
235         }
236                 
237         @Test
238         public void getFavoriteItemsTest(){
239                 Long userId = (long)1;
240                 String sql = "SELECT DISTINCT f.user_id,f.menu_id,m.text,m.url  "
241                                 + "FROM fn_menu_favorites f, fn_menu_functional m, fn_menu_functional_roles mr  "
242                                 + "WHERE f.user_id='1' AND f.menu_id = m.menu_id  AND f.menu_id = mr.menu_id  AND mr.role_id != '900' ";
243                 List<FavoritesFunctionalMenuItemJson> actualResult = new ArrayList<FavoritesFunctionalMenuItemJson>();
244                 List<FavoritesFunctionalMenuItemJson> expectedResult = new ArrayList<FavoritesFunctionalMenuItemJson>();
245                  
246                 Mockito.when(dataAccessService.executeSQLQuery(sql, FavoritesFunctionalMenuItemJson.class, null)).thenReturn(expectedResult);
247                  
248                 actualResult = functionalMenuServiceImpl.getFavoriteItems(userId);
249                 assertEquals(actualResult, expectedResult);             
250         }       
251         
252         @Test
253         public void getFavoriteItemsExceptionTest(){
254                 Long userId = (long)1;
255                 String sql = "SELECT DISTINCT f.user_id,f.menu_id,m.text,m.url  "
256                                 + "FROM fn_menu_favorites f, fn_menu_functional m, fn_menu_functional_roles mr  "
257                                 + "WHERE f.user_id='1' AND f.menu_id = m.menu_id  AND f.menu_id = mr.menu_id  AND mr.role_id != '900' ";
258                 Mockito.when(dataAccessService.executeSQLQuery(sql, FavoritesFunctionalMenuItemJson.class, null));
259                 List<FavoritesFunctionalMenuItemJson> expectedResult = functionalMenuServiceImpl.getFavoriteItems(userId);
260         }
261         
262         @Test
263         public void getFunctionalMenuItemsTest1(){
264                 EPUser epUser = new EPUser();
265                 List<FunctionalMenuItem> expected = new ArrayList<FunctionalMenuItem>();
266                 List<FunctionalMenuItem> actual = functionalMenuServiceImpl.getFunctionalMenuItems(epUser);
267                 assertEquals(actual, expected);
268         }
269         
270         @Test
271         public void getFunctionalMenuItemsTest2(){
272                 List<FunctionalMenuItem> expected = new ArrayList<FunctionalMenuItem>();
273                 List<FunctionalMenuItem> actual = functionalMenuServiceImpl.getFunctionalMenuItems();
274                 assertEquals(actual, expected);
275         }
276         
277         @Test
278         public void transformFunctionalMenuItemWithAppIDToFunctionalMenuItem(){
279                 FunctionalMenuItemWithAppID functionalMenuItemWithAppID = new FunctionalMenuItemWithAppID();
280                 List<FunctionalMenuItemWithAppID> functionalMenuItemWithAppIDList = new ArrayList<FunctionalMenuItemWithAppID>();
281                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
282                 functionalMenuItemWithAppIDList.add(functionalMenuItemWithAppID);
283                 List<FunctionalMenuItem> expected = new ArrayList<FunctionalMenuItem>();
284                 expected.add(functionalMenuItem);
285                 List<FunctionalMenuItem> actual = functionalMenuServiceImpl.transformFunctionalMenuItemWithAppIDToFunctionalMenuItem(functionalMenuItemWithAppIDList);
286                 assertEquals(actual.size(), expected.size());
287         }
288         
289         @Test
290         public void addRolesTest(){
291                 FunctionalMenuItemWithRoles menuItemJson = new FunctionalMenuItemWithRoles();
292                 List<Integer> list = new ArrayList<Integer>();
293                 list.add(123);
294                 menuItemJson.setRoles(list);
295                 functionalMenuServiceImpl.addRoles(menuItemJson, session);
296         }
297         
298         @Test
299         public void deleteRolesTest(){
300                 Long id = (long)123;
301                 Mockito.doNothing().when(dataAccessService).deleteDomainObjects(FavoritesFunctionalMenuItem.class, "menu_id='" + id + "'", null);
302                 functionalMenuServiceImpl.deleteFavorites(id);
303         }
304         
305         @Test
306         public void deleteFavoritesTest(){
307                 Long id = (long)123;
308                 Mockito.doNothing().when(dataAccessService).deleteDomainObjects(FavoritesFunctionalMenuItem.class, "menu_id='" + id + "'", null);
309                 functionalMenuServiceImpl.deleteFavorites(id);
310         }
311         
312         @Test
313         public void removeAppInfoTest(){
314                 Long id = (long)123;
315                 FunctionalMenuItem menuItem = new FunctionalMenuItem();
316                 Mockito.when(session.get(FunctionalMenuItem.class, id)).thenReturn(menuItem);
317                 functionalMenuServiceImpl.removeAppInfo(session, id);
318         }
319         
320         @Test
321         public void editFunctionalMenuItem400Status(){
322                 FieldsValidator expected = new FieldsValidator();
323                 expected.setHttpStatusCode(400l);
324                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
325                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
326                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
327                 restrictionsList.add(textCriterion);
328                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
329                 List<Integer> list = new ArrayList<Integer>();
330                 list.add(123);
331                 functionalMenuItemWithRoles.setRoles(list);             
332                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
333                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
334         }
335         
336         @SuppressWarnings("unchecked")
337         @Test
338         public void editFunctionalMenuItemMenuIdNullTest(){
339                 Session session = PowerMockito.mock(Session.class);
340                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
341                 Transaction tx = PowerMockito.mock(Transaction.class);
342                 Mockito.when(session.beginTransaction()).thenReturn(tx);
343                 FieldsValidator expected = new FieldsValidator();
344                 expected.setHttpStatusCode(400l);
345                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
346                 List<Integer> list1 = new ArrayList<Integer>();
347                 list1.add(123);
348                 functionalMenuItem.setUrl("test.com");
349                 functionalMenuItem.setRoles(null);
350                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
351                 functionalMenuItemList.add(functionalMenuItem);
352                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
353                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
354                 restrictionsList.add(textCriterion);
355                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
356                 functionalMenuItemWithRoles.text = "test";
357                 //functionalMenuItemWithRoles.menuId = (long)123;
358                 functionalMenuItemWithRoles.column = (Integer)123;
359                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
360                 List<Integer> list = new ArrayList<Integer>();
361                 list.add(123);
362                 functionalMenuItemWithRoles.setRoles(null);     
363                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
364                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
365                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
366                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
367         }
368         
369         @SuppressWarnings("unchecked")
370         @Test
371         public void editFunctionalMenuItemTest(){
372                 Session session = PowerMockito.mock(Session.class);
373                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
374                 Transaction tx = PowerMockito.mock(Transaction.class);
375                 Mockito.when(session.beginTransaction()).thenReturn(tx);
376                 FieldsValidator expected = new FieldsValidator();
377                 expected.setHttpStatusCode(200l);
378                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
379                 List<Integer> list1 = new ArrayList<Integer>();
380                 list1.add(123);
381                 functionalMenuItem.setUrl("test.com");
382                 functionalMenuItem.setRoles(null);
383                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
384                 functionalMenuItemList.add(functionalMenuItem);
385                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
386                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
387                 restrictionsList.add(textCriterion);
388                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
389                 functionalMenuItemWithRoles.text = "test";
390                 functionalMenuItemWithRoles.menuId = (long)123;
391                 functionalMenuItemWithRoles.column = (Integer)123;
392                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
393                 List<Integer> list = new ArrayList<Integer>();
394                 list.add(123);
395                 functionalMenuItemWithRoles.setRoles(null);     
396                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
397                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
398                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
399                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
400         }
401         
402         @SuppressWarnings("unchecked")
403         @Test
404         public void editFunctionalMenuItem1Test(){
405                 Session session = PowerMockito.mock(Session.class);
406                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
407                 Transaction tx = PowerMockito.mock(Transaction.class);
408                 Mockito.when(session.beginTransaction()).thenReturn(tx);
409                 FieldsValidator expected = new FieldsValidator();
410                 expected.setHttpStatusCode(200l);
411                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
412                 List<Integer> list1 = new ArrayList<Integer>();
413                 list1.add(123);
414                 functionalMenuItem.setRoles(list1);
415                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
416                 functionalMenuItemList.add(functionalMenuItem);
417                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
418                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
419                 restrictionsList.add(textCriterion);
420                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
421                 functionalMenuItemWithRoles.text = "test";
422                 functionalMenuItemWithRoles.menuId = (long)123;
423                 functionalMenuItemWithRoles.column = (Integer)123;
424                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
425                 functionalMenuItemWithRoles.appid =1;
426                 functionalMenuItemWithRoles.url = "test.com";
427                 List<Integer> list = new ArrayList<Integer>();
428                 list.add(123);
429                 functionalMenuItemWithRoles.setRoles(list);     
430                 PowerMockito.mockStatic(StringUtils.class);
431                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
432                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
433                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
434                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
435                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
436         }
437         
438         @SuppressWarnings("unchecked")
439         @Test
440         public void editFunctionalMenuItem2Test(){
441                 Session session = PowerMockito.mock(Session.class);
442                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
443                 Transaction tx = PowerMockito.mock(Transaction.class);
444                 Mockito.when(session.beginTransaction()).thenReturn(tx);
445                 FieldsValidator expected = new FieldsValidator();
446                 expected.setHttpStatusCode(200l);
447                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
448                 List<Integer> list1 = new ArrayList<Integer>();
449                 list1.add(123);
450                 functionalMenuItem.setRoles(list1);
451                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
452                 functionalMenuItemList.add(functionalMenuItem);
453                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
454                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
455                 restrictionsList.add(textCriterion);
456                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
457                 functionalMenuItemWithRoles.text = "test";
458                 functionalMenuItemWithRoles.menuId = (long)123;
459                 functionalMenuItemWithRoles.column = (Integer)123;
460                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
461                 functionalMenuItemWithRoles.appid =1;
462                 functionalMenuItemWithRoles.column = 1;
463                 List<Integer> list = new ArrayList<Integer>();
464                 list.add(123);
465                 functionalMenuItemWithRoles.setRoles(list);     
466                 PowerMockito.mockStatic(StringUtils.class);
467                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
468                 Mockito.when(session.createCriteria(FunctionalMenuItem.class)).thenReturn(criteria);
469                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
470                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
471                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
472                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
473         }
474         
475         @SuppressWarnings("unchecked")
476         @Test
477         public void editFunctionalMenuItem3Test(){
478                 Session session = PowerMockito.mock(Session.class);
479                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
480                 Transaction tx = PowerMockito.mock(Transaction.class);
481                 Mockito.when(session.beginTransaction()).thenReturn(tx);
482                 FieldsValidator expected = new FieldsValidator();
483                 expected.setHttpStatusCode(500l);
484                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
485                 List<Integer> list1 = new ArrayList<Integer>();
486                 list1.add(123);
487                 functionalMenuItem.setRoles(list1);
488                 functionalMenuItem.parentMenuId = (Integer)123;
489                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
490                 functionalMenuItemList.add(functionalMenuItem);
491                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
492                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
493                 restrictionsList.add(textCriterion);
494                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
495                 functionalMenuItemWithRoles.text = "test";
496                 functionalMenuItemWithRoles.menuId = (long)123;
497                 functionalMenuItemWithRoles.column = (Integer)123;
498                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
499                 functionalMenuItemWithRoles.appid =1;
500                 functionalMenuItemWithRoles.column = 1;
501                 List<Integer> list = new ArrayList<Integer>();
502                 list.add(123);
503                 functionalMenuItemWithRoles.setRoles(list);     
504                 PowerMockito.mockStatic(StringUtils.class);
505                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
506                 Mockito.when(session.createCriteria(FunctionalMenuItem.class)).thenReturn(criteria);
507                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
508                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
509                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
510                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
511         }
512         
513         @SuppressWarnings("unchecked")
514         @Test
515         public void editFunctionalMenuItem4Test(){
516                 Session session = PowerMockito.mock(Session.class);
517                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
518                 Transaction tx = PowerMockito.mock(Transaction.class);
519                 Mockito.when(session.beginTransaction()).thenReturn(tx);
520                 FieldsValidator expected = new FieldsValidator();
521                 expected.setHttpStatusCode(200l);
522                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
523                 List<Integer> list1 = new ArrayList<Integer>();
524                 list1.add(123);
525                 functionalMenuItem.setRoles(list1);
526                 functionalMenuItem.parentMenuId = (Integer)12;
527                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
528                 functionalMenuItemList.add(functionalMenuItem);
529                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
530                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
531                 restrictionsList.add(textCriterion);
532                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
533                 functionalMenuItemWithRoles.text = "test";
534                 functionalMenuItemWithRoles.menuId = (long)123;
535                 functionalMenuItemWithRoles.column = (Integer)123;
536                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
537                 functionalMenuItemWithRoles.appid =1;
538                 functionalMenuItemWithRoles.column = 1;
539                 List<Integer> list = new ArrayList<Integer>();
540                 list.add(123);
541                 functionalMenuItemWithRoles.setRoles(list);     
542                 PowerMockito.mockStatic(StringUtils.class);
543                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
544                 Mockito.when(session.createCriteria(FunctionalMenuItem.class)).thenReturn(criteria);
545                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
546                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
547                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
548                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
549         }
550         
551         @SuppressWarnings("unchecked")
552         @Test
553         public void editFunctionalMenuItem5Test(){
554                 Session session = PowerMockito.mock(Session.class);
555                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
556                 Transaction tx = PowerMockito.mock(Transaction.class);
557                 Mockito.when(session.beginTransaction()).thenReturn(tx);
558                 FieldsValidator expected = new FieldsValidator();
559                 expected.setHttpStatusCode(200l);
560                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
561                 List<Integer> list1 = new ArrayList<Integer>();
562                 list1.add(123);
563                 functionalMenuItem.setRoles(list1);
564                 functionalMenuItem.parentMenuId = (Integer)123;
565                 functionalMenuItem.setUrl("test.com");
566                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
567                 functionalMenuItemList.add(functionalMenuItem);
568                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
569                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
570                 restrictionsList.add(textCriterion);
571                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
572                 functionalMenuItemWithRoles.text = "test";
573                 functionalMenuItemWithRoles.menuId = (long)123;
574                 functionalMenuItemWithRoles.column = (Integer)123;
575                 functionalMenuItemWithRoles.parentMenuId = (Integer)12;
576                 functionalMenuItemWithRoles.appid =1;
577                 functionalMenuItemWithRoles.column = 1;
578                 List<Integer> list = new ArrayList<Integer>();
579                 list.add(123);
580                 functionalMenuItemWithRoles.setRoles(list);     
581                 PowerMockito.mockStatic(StringUtils.class);
582                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
583                 Mockito.when((FunctionalMenuItem) session.get(FunctionalMenuItem.class, (long)12)).thenReturn(functionalMenuItem);
584                 Mockito.when(session.createCriteria(FunctionalMenuItem.class)).thenReturn(criteria);
585                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
586                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
587                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
588                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
589         }
590         
591         @SuppressWarnings("unchecked")
592         @Test
593         public void editFunctionalMenuItem6Test(){
594                 Session session = PowerMockito.mock(Session.class);
595                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
596                 Transaction tx = PowerMockito.mock(Transaction.class);
597                 Mockito.when(session.beginTransaction()).thenReturn(tx);
598                 FieldsValidator expected = new FieldsValidator();
599                 expected.setHttpStatusCode(200l);
600                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
601                 List<Integer> list1 = new ArrayList<Integer>();
602                 list1.add(123);
603                 functionalMenuItem.setUrl("test.com");
604                 functionalMenuItem.setRoles(null);
605                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
606                 functionalMenuItemList.add(functionalMenuItem);
607                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
608                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
609                 restrictionsList.add(textCriterion);
610                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
611                 functionalMenuItemWithRoles.text = "test";
612                 functionalMenuItemWithRoles.menuId = (long)123;
613                 functionalMenuItemWithRoles.column = (Integer)123;
614                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
615                 List<Integer> list = new ArrayList<Integer>();
616                 list.add(123);
617                 functionalMenuItemWithRoles.setRoles(null);     
618                 EPApp app = new EPApp();
619                 app.setId((long)123);
620                 Mockito.when(session.get(EPApp.class, (long)123)).thenReturn(app);
621                 Mockito.when((List<FunctionalMenuItem>)dataAccessService.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(functionalMenuItemList);
622                 Mockito.when(session.get(FunctionalMenuItem.class, functionalMenuItemWithRoles.menuId)).thenReturn(functionalMenuItem);
623                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
624                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
625         }
626         
627         @SuppressWarnings("unchecked")
628         @Test
629         public void editFunctionalMenuItem7Test(){
630                 Session session = PowerMockito.mock(Session.class);
631                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
632                 Transaction tx = PowerMockito.mock(Transaction.class);
633                 Mockito.when(session.beginTransaction()).thenReturn(tx);
634                 FieldsValidator expected = new FieldsValidator();
635                 expected.setHttpStatusCode(500l);
636                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
637                 List<Integer> list1 = new ArrayList<Integer>();
638                 list1.add(123);
639                 functionalMenuItem.setRoles(list1);
640                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
641                 functionalMenuItemList.add(functionalMenuItem);
642                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
643                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
644                 restrictionsList.add(textCriterion);
645                 FunctionalMenuItemWithRoles  functionalMenuItemWithRoles  = new FunctionalMenuItemWithRoles();
646                 functionalMenuItemWithRoles.text = "test";
647                 functionalMenuItemWithRoles.menuId = (long)123;
648                 functionalMenuItemWithRoles.column = (Integer)123;
649                 functionalMenuItemWithRoles.parentMenuId = (Integer)123;
650                 functionalMenuItemWithRoles.appid =1;
651                 functionalMenuItemWithRoles.url = "test.com";
652                 List<Integer> list = new ArrayList<Integer>();
653                 list.add(123);
654                 functionalMenuItemWithRoles.setRoles(list);     
655                 PowerMockito.mockStatic(StringUtils.class);
656                 Mockito.when(StringUtils.isEmpty(Matchers.anyString())).thenReturn(false);
657                 EPApp app = new EPApp();
658                 app.setEnabled(false);
659                 PowerMockito.when((EPApp)session.get(EPApp.class,1)).thenReturn(app);
660                 FieldsValidator actual = functionalMenuServiceImpl.editFunctionalMenuItem(functionalMenuItemWithRoles);
661                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
662         }
663         
664         @Test
665         public void deleteFunctionalMenuItemTest(){
666                 String sql = "set FOREIGN_KEY_CHECKS=";
667                 FieldsValidator expected = new FieldsValidator();
668                 expected.setHttpStatusCode(500l);
669                 Long menuId = (long)123;
670                 Session session = PowerMockito.mock(Session.class);
671                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
672                 Transaction tx = PowerMockito.mock(Transaction.class);
673         //      SQLQuery query = PowerMockito.mock(Query.class);
674                 Mockito.when(session.beginTransaction()).thenReturn(tx);
675         //      Mockito.when(session.createSQLQuery(sql)).thenReturn(query);
676                 FieldsValidator actual = functionalMenuServiceImpl.deleteFunctionalMenuItem(menuId);
677                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
678         }
679         
680         @Test
681         public void deleteFunctionalMenuItemExceptionTest(){
682                 FieldsValidator expected = new FieldsValidator();
683                 expected.setHttpStatusCode(500l);
684                 Long menuId = (long)123;
685                 FieldsValidator actual = functionalMenuServiceImpl.deleteFunctionalMenuItem(menuId);
686                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
687         }
688         
689         @Test
690         public void getFunctionalMenuRoleTest(){
691                 List<FunctionalMenuRole> expected = null;
692                 String sql = "SELECT * from fn_menu_functional_roles";
693                 Mockito.when(dataAccessService.executeSQLQuery(sql, FunctionalMenuRole.class,
694                                 null)).thenReturn(expected);
695                 List<FunctionalMenuRole> actual = functionalMenuServiceImpl.getFunctionalMenuRole();
696                 assertEquals(expected, actual);
697         }
698         
699         @Test
700         public void getUserAppRolesListTest(){
701                 String userId = "test";
702                 Map<String, String> params = new HashMap<>();
703                 params.put("userId", "test");
704                 List<BusinessCardApplicationRole> userAppRoles = null;
705                 List<BusinessCardApplicationRole> expected = null;
706                 Mockito.when(dataAccessService.executeNamedQuery("getUserApproles", params, null)).thenReturn(userAppRoles);
707                 List<BusinessCardApplicationRole> actual = functionalMenuServiceImpl.getUserAppRolesList(userId);
708                 assertEquals(expected, actual);
709         }
710         
711         @Test
712         public void getUserAppRolesListExceptionTest(){
713                 String userId = "test";
714                 Map<String, String> params = new HashMap<>();
715                 params.put("userId", "test");
716                 Mockito.when(dataAccessService.executeNamedQuery("getUserApproles", params, null));
717                 List<BusinessCardApplicationRole> actual = functionalMenuServiceImpl.getUserAppRolesList(userId);
718         }
719         
720         @Test
721         public void createFunctionalMenuItem400StautusTest(){
722                 FunctionalMenuItemWithRoles functionalMenuItemWithRoles = new FunctionalMenuItemWithRoles();
723                 FieldsValidator expected = new FieldsValidator();
724                 expected.setHttpStatusCode(400l);
725                 FieldsValidator actual = functionalMenuServiceImpl.createFunctionalMenuItem(functionalMenuItemWithRoles);
726                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
727         }
728         
729         @SuppressWarnings("unchecked")
730         @Test
731         public void createFunctionalMenuItemTest(){
732                 Session session = PowerMockito.mock(Session.class);
733                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
734                 Transaction tx = PowerMockito.mock(Transaction.class);
735                 Mockito.when(session.beginTransaction()).thenReturn(tx);
736                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
737                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
738                 functionalMenuItem.setRestrictedApp(true);
739                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
740                 restrictionsList.add(textCriterion);
741                 FunctionalMenuItemWithRoles functionalMenuItemWithRoles = new FunctionalMenuItemWithRoles();
742                 functionalMenuItemWithRoles.menuId = (long) 123;
743                 functionalMenuItemWithRoles.url = "test";
744                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
745                 functionalMenuItemList.add(functionalMenuItem);
746                 FieldsValidator expected = new FieldsValidator();
747                 expected.setHttpStatusCode(400l);
748                 DataAccessService dao = PowerMockito.mock(DataAccessService.class);
749                 PowerMockito.when((List<FunctionalMenuItem>)dao.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(null);
750                 FieldsValidator actual = functionalMenuServiceImpl.createFunctionalMenuItem(functionalMenuItemWithRoles);
751                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
752         }
753         
754         @SuppressWarnings("unchecked")
755         @Test
756         public void createFunctionalMenuItemExceptionTest1(){
757                 Session session = PowerMockito.mock(Session.class);
758                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
759                 Transaction tx = PowerMockito.mock(Transaction.class);
760                 Mockito.when(session.beginTransaction()).thenReturn(tx);
761                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
762                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
763                 functionalMenuItem.setRestrictedApp(true);
764                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
765                 restrictionsList.add(textCriterion);
766                 FunctionalMenuItemWithRoles functionalMenuItemWithRoles = new FunctionalMenuItemWithRoles();
767                 functionalMenuItemWithRoles.menuId = (long) 123;
768                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
769                 functionalMenuItemList.add(functionalMenuItem);
770                 FieldsValidator expected = new FieldsValidator();
771                 expected.setHttpStatusCode(500l);
772                 DataAccessService dao = PowerMockito.mock(DataAccessService.class);
773                 PowerMockito.when((List<FunctionalMenuItem>)dao.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(null);
774                 FieldsValidator actual = functionalMenuServiceImpl.createFunctionalMenuItem(functionalMenuItemWithRoles);
775                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
776         }
777         
778         @SuppressWarnings("unchecked")
779         @Test
780         public void createFunctionalMenuItemTest1(){
781                 Session session = PowerMockito.mock(Session.class);
782                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
783                 Transaction tx = PowerMockito.mock(Transaction.class);
784                 Mockito.when(session.beginTransaction()).thenReturn(tx);
785                 List<Criterion> restrictionsList = new ArrayList<Criterion>();
786                 FunctionalMenuItem functionalMenuItem = new FunctionalMenuItem();
787                 functionalMenuItem.setRestrictedApp(true);
788                 Criterion textCriterion = Restrictions.eq("text",functionalMenuItem.text);
789                 restrictionsList.add(textCriterion);
790                 FunctionalMenuItemWithRoles functionalMenuItemWithRoles = new FunctionalMenuItemWithRoles();
791                 functionalMenuItemWithRoles.menuId = (long) 123;
792                 List<FunctionalMenuItem> functionalMenuItemList = new ArrayList<FunctionalMenuItem>();
793                 functionalMenuItemList.add(functionalMenuItem);
794                 FieldsValidator expected = new FieldsValidator();
795                 expected.setHttpStatusCode(200l);
796                 Criteria criteria =  Mockito.mock(Criteria.class);
797                 DataAccessService dao = PowerMockito.mock(DataAccessService.class);
798                 Mockito.when(session.createCriteria(FunctionalMenuItem.class)).thenReturn(criteria);
799                 PowerMockito.when((List<FunctionalMenuItem>)dao.getList(FunctionalMenuItem.class, null, restrictionsList, null)).thenReturn(null);
800                 FieldsValidator actual = functionalMenuServiceImpl.createFunctionalMenuItem(functionalMenuItemWithRoles);
801                 assertEquals(expected.getHttpStatusCode(), actual.getHttpStatusCode());
802         }
803         
804         @Test
805         public void regenerateAncestorTableTest(){
806                 FieldsValidator expected = new FieldsValidator ();
807                 expected.setHttpStatusCode(200l);
808                 Session session = PowerMockito.mock(Session.class);
809                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
810                 Transaction tx = PowerMockito.mock(Transaction.class);
811                 Mockito.when(session.beginTransaction()).thenReturn(tx);
812                 SQLQuery query = Mockito.mock(SQLQuery.class);
813                 String sql = "DELETE FROM fn_menu_functional_ancestors";
814                 Mockito.when(session.createSQLQuery(Matchers.anyString())).thenReturn(query);
815                 FieldsValidator actual = functionalMenuServiceImpl.regenerateAncestorTable();
816                 assertEquals(expected, actual);         
817         }
818         
819         @Test
820         public void regenerateAncestorTableExceptionTest(){
821                 FieldsValidator expected = new FieldsValidator ();
822                 expected.setHttpStatusCode(500l);
823                 Session session = PowerMockito.mock(Session.class);
824                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
825                 Transaction tx = PowerMockito.mock(Transaction.class);
826                 Mockito.when(session.beginTransaction()).thenReturn(tx);
827                 SQLQuery query = Mockito.mock(SQLQuery.class);
828                 String sql = "DELETE FROM fn_menu_functional_ancestors";
829                 Mockito.when(session.createSQLQuery(sql)).thenReturn(query);
830                 FieldsValidator actual = functionalMenuServiceImpl.regenerateAncestorTable();
831                 assertEquals(expected, actual);         
832         }
833         
834         @Test
835         public void setFavoriteItemTest(){
836                 FieldsValidator expected = new FieldsValidator();
837                 expected.setHttpStatusCode(200l);
838                 Session session = PowerMockito.mock(Session.class);
839                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
840                 Transaction tx = PowerMockito.mock(Transaction.class);
841                 Mockito.when(session.beginTransaction()).thenReturn(tx);
842                 FavoritesFunctionalMenuItem favoritesFunctionalMenuItem = new FavoritesFunctionalMenuItem ();
843                 Mockito.doNothing().when(tx).commit();
844                 FieldsValidator actual = functionalMenuServiceImpl.setFavoriteItem(favoritesFunctionalMenuItem);
845                 assertEquals(expected, actual);
846         }
847         
848         @Test
849         public void setFavoriteItemExceptionTest(){
850                 FieldsValidator expected = new FieldsValidator();
851                 expected.setHttpStatusCode(500l);
852                 Session session = PowerMockito.mock(Session.class);
853                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
854                 Transaction tx = PowerMockito.mock(Transaction.class);
855                 FavoritesFunctionalMenuItem favoritesFunctionalMenuItem = new FavoritesFunctionalMenuItem ();
856                 Mockito.doNothing().when(tx).commit();
857                 FieldsValidator actual = functionalMenuServiceImpl.setFavoriteItem(favoritesFunctionalMenuItem);
858                 assertEquals(expected, actual);
859         }
860         
861         @Test
862         public void removeFavoriteItemTest(){
863                 FieldsValidator expected = new FieldsValidator();
864                 expected.setHttpStatusCode(200l);
865                 Session session = PowerMockito.mock(Session.class);
866                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
867                 Transaction tx = PowerMockito.mock(Transaction.class);
868                 Mockito.when(session.beginTransaction()).thenReturn(tx);
869                 Mockito.doNothing().when(tx).commit();
870                 FieldsValidator actual = functionalMenuServiceImpl.removeFavoriteItem((long)123, (long)123);
871                 assertEquals(expected, actual);
872         }
873         
874         @Test
875         public void removeFavoriteItemExceptionTest(){
876                 FieldsValidator expected = new FieldsValidator();
877                 expected.setHttpStatusCode(500l);
878                 Session session = PowerMockito.mock(Session.class);
879                 Mockito.when(sessionFactory.openSession()).thenReturn(session);
880                 Transaction tx = PowerMockito.mock(Transaction.class);
881                 Mockito.doNothing().when(tx).commit();
882                 FieldsValidator actual = functionalMenuServiceImpl.removeFavoriteItem((long)123, (long)123);
883                 assertEquals(expected, actual);
884         }
885 }