Unit Test Case for EPLeftMenuServiceImpl.java
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / portal / service / EPLeftMenuServiceImplTest.java
index 3cc6762..9a2568d 100644 (file)
@@ -1,60 +1,40 @@
-/*-
- * ============LICENSE_START==========================================
- * ONAP Portal
- * ===================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *             https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- */
+/*
+* ============LICENSE_START=======================================================
+* ONAP  PORTAL
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+* ============LICENSE_END=========================================================
+*/
 package org.onap.portalapp.portal.service;
 
-import static org.junit.Assert.assertNotEquals;
-
 import java.util.ArrayList;
-import java.util.HashMap;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-import java.util.TreeSet;
 
+import org.json.JSONArray;
 import org.json.JSONObject;
 import org.junit.Before;
 import org.junit.Test;
 import org.mockito.InjectMocks;
-import org.mockito.Matchers;
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
-import org.onap.portalapp.portal.core.MockEPUser;
 import org.onap.portalapp.portal.domain.CentralizedApp;
 import org.onap.portalapp.portal.domain.EPUser;
 import org.onap.portalsdk.core.domain.MenuData;
@@ -65,10 +45,9 @@ public class EPLeftMenuServiceImplTest {
 
        @Mock
        DataAccessService dataAccessService = new DataAccessServiceImpl();
-       
        @Mock
-       ExternalAccessRolesServiceImpl externalAccessRolesServiceImpl = new ExternalAccessRolesServiceImpl();
-
+        ExternalAccessRolesService externalAccessRolesService;
+       
        @Before
        public void setup() {
                MockitoAnnotations.initMocks(this);
@@ -77,41 +56,54 @@ public class EPLeftMenuServiceImplTest {
        @InjectMocks
        EPLeftMenuServiceImpl epLeftMenuServiceImpl = new EPLeftMenuServiceImpl();
        
-       
-       MockEPUser mockUser = new MockEPUser();
-       
        @Test
        public void getLeftMenuItemsTest() {
-               EPUser user = mockUser.mockEPUser();
-               Set<MenuData> fullMenuSet = new TreeSet<>();
-               MenuData menuData =  new MenuData();
-               menuData.setAction("test");
-               menuData.setFunctionCd("test_1");
-               menuData.setActive(true);
-               menuData.setExternalUrl("test");
-               menuData.setId(1l);
-               menuData.setMenuSetCode("test");
-               menuData.setSortOrder((short) 1);
-               menuData.setSeparator(true);
-               fullMenuSet.add(menuData);
-               Set<String> roleFunctionSet = new TreeSet<>();
-               roleFunctionSet.add("test");
-               roleFunctionSet.add("test2");
-               Map<String, String> params = new HashMap<>();
-               params.put("userId", user.getOrgUserId());
-               List<CentralizedApp> applicationsList = new ArrayList<>();
-               List<CentralizedApp> applicationsList2 = new ArrayList<>();
-               CentralizedApp centralizedApp = new CentralizedApp();
-               centralizedApp.setAppId(1);
-               centralizedApp.setAppName("test");
-               applicationsList.add(centralizedApp);
-               applicationsList2.add(centralizedApp);
-               Mockito.when(dataAccessService.executeNamedQuery(Matchers.anyString(), Matchers.anyMap(), Matchers.anyMap())).thenReturn(applicationsList);
-               Mockito.when(externalAccessRolesServiceImpl.getCentralizedAppsOfUser(Matchers.anyString())).thenReturn(applicationsList2);
-               String actual = epLeftMenuServiceImpl.getLeftMenuItems(user, fullMenuSet, roleFunctionSet);
-               JSONObject notExpected = new JSONObject();
-               assertNotEquals(notExpected.toString(), actual);
-       }
+               Map<String, JSONObject> defaultNavMap = new LinkedHashMap<String, JSONObject>();
+               Set<MenuData> fullMenuSet = new HashSet<>();
+               Set<String> roleFunctionSet = new HashSet<>();
+               defaultNavMap.clear();
+               JSONObject navItemsDetails1 = new JSONObject();
+               navItemsDetails1.put("name", "test");
+               navItemsDetails1.put("state", "demo");
+               navItemsDetails1.put("imageSrc", "img");
+               defaultNavMap.put("root.applicationsHome", navItemsDetails1);
 
+               JSONObject navItemsDetails2 = new JSONObject();
+               navItemsDetails2.put("name", "test1");
+               navItemsDetails2.put("state", "demo1");
+               navItemsDetails2.put("imageSrc", "img1");
+               defaultNavMap.put("root.appCatalog", navItemsDetails2);
 
+               JSONObject navItemsDetails3 = new JSONObject();
+               navItemsDetails3.put("name", "test2");
+               navItemsDetails3.put("state", "demo2");
+               navItemsDetails3.put("imageSrc", "img2");
+               defaultNavMap.put("root.widgetCatalog", navItemsDetails3);
+               
+               List<CentralizedApp> applicationsList = new ArrayList<>();
+               EPUser epUser = new EPUser();
+               epUser.setOrgUserId("userId");
+               Mockito.when((List<CentralizedApp>)externalAccessRolesService.getCentralizedAppsOfUser("userId")).thenReturn(applicationsList);
+               
+               MenuData data = new MenuData();
+               data.setLabel("labelTest");
+               data.setImageSrc("imgTest");
+               data.setAction("actionTest");
+               JSONObject navItemsDetails = new JSONObject();
+               navItemsDetails.put("name", "labelTest");
+               navItemsDetails.put("state", "actionTest");
+               navItemsDetails.put("imageSrc", "imgTest");
+               defaultNavMap.put("actionTest", navItemsDetails);
+               
+               JSONObject sidebarModel = new JSONObject();
+               JSONArray navItems = new JSONArray();
+               Collection<JSONObject> jsonObjs = defaultNavMap.values();
+               navItems.put(navItemsDetails3);
+               sidebarModel.put("label", "ECOMP portal");
+               sidebarModel.put("navItems", navItems);
+               
+               epLeftMenuServiceImpl.getLeftMenuItems(epUser, fullMenuSet, roleFunctionSet);
+               
+               
+       }
 }