From 4dcd7b8b307dc429ea669cb4c508579e298df324 Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 16:58:56 +0530 Subject: [PATCH 1/7] APIPubisherUtil class test cases --- .../publisher/APIPublisherServiceTest.java | 18 +- .../publisher/APIPublisherUtilTest.java | 109 +++++++ .../publisher/utils/MockServletContext.java | 285 ++++++++++++++++++ 3 files changed, 409 insertions(+), 3 deletions(-) create mode 100644 components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java create mode 100644 components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/utils/MockServletContext.java diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherServiceTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherServiceTest.java index 5360caa68b..2a5b533eaf 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherServiceTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherServiceTest.java @@ -89,7 +89,7 @@ APIPublisherServiceTest extends BaseAPIPublisherTest { @Test(description = "createAPIListWithNoApi | will fail if there are any exceptions") private void publishWithNoAPIListCreated() throws APIManagerPublisherException { APIConfig apiConfig = new APIConfig(); - setApiConfigs(apiConfig, "testAPI-3"); + setApiConfigs(apiConfig, "testAPI-2"); APIPublisherDataHolder apiPublisherDataHolder = Mockito.mock(APIPublisherDataHolder.getInstance(). getClass(), Mockito.CALLS_REAL_METHODS); IntegrationClientService integrationClientService = Mockito.mock(IntegrationClientServiceImpl. @@ -118,7 +118,7 @@ APIPublisherServiceTest extends BaseAPIPublisherTest { @Test(description = "createAPIList | will fail if there are any exceptions") private void publishWithAPIListCreated() throws APIManagerPublisherException { APIConfig apiConfig = new APIConfig(); - setApiConfigs(apiConfig, "testAPI-2"); + setApiConfigs(apiConfig, "testAPI-3"); APIPublisherDataHolder apiPublisherDataHolder = Mockito.mock(APIPublisherDataHolder.getInstance(). getClass(), Mockito.CALLS_REAL_METHODS); IntegrationClientService integrationClientService = Mockito.mock(IntegrationClientServiceImpl. @@ -134,7 +134,7 @@ APIPublisherServiceTest extends BaseAPIPublisherTest { doReturn(api).when(apIsApi).apisPost(Mockito.any(), Mockito.anyString()); APIList apiList = Mockito.mock(APIList.class, Mockito.CALLS_REAL_METHODS); APIInfo apiInfo = new APIInfo(); - apiInfo.setName("testAPI-2"); + apiInfo.setName("testAPI-3"); apiInfo.setVersion("1.0.0"); apiInfo.setId("test-one"); List apiInfoList = new ArrayList<>(); @@ -148,6 +148,18 @@ APIPublisherServiceTest extends BaseAPIPublisherTest { apiPublisherService.publishAPI(apiConfig); } + @Test(description = "publish API with scope added | will fail if there are any exceptions") + private void publishWithAPIScope() throws APIManagerPublisherException { + APIConfig apiConfig = new APIConfig(); + setApiConfigs(apiConfig, "testAPI-4"); + Set scopes = new HashSet<>(); + ApiScope apiScope = new ApiScope(); + apiScope.setDescription("testing"); + scopes.add(apiScope); + apiConfig.setScopes(scopes); + apiPublisherService.publishAPI(apiConfig); + } + private void setApiConfigs(APIConfig apiConfig, String name) { apiConfig.setName(name); apiConfig.setContext("api/device-mgt/windows/v1.g0/admin/devices"); diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java new file mode 100644 index 0000000000..790b8d3f37 --- /dev/null +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -0,0 +1,109 @@ +/* +* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. +* +* WSO2 Inc. licenses this file to you 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. +*/ +package org.wso2.carbon.apimgt.webapp.publisher; + +import org.testng.Assert; +import org.testng.annotations.BeforeTest; +import org.testng.annotations.Test; +import org.wso2.carbon.apimgt.webapp.publisher.config.APIResource; +import org.wso2.carbon.apimgt.webapp.publisher.config.APIResourceConfiguration; +import org.wso2.carbon.apimgt.webapp.publisher.config.WebappPublisherConfig; +import org.wso2.carbon.apimgt.webapp.publisher.dto.ApiScope; +import org.wso2.carbon.apimgt.webapp.publisher.exception.APIManagerPublisherException; +import org.wso2.carbon.apimgt.webapp.publisher.utils.MockServletContext; +import org.wso2.carbon.context.PrivilegedCarbonContext; +import org.wso2.carbon.registry.core.jdbc.realm.InMemoryRealmService; +import org.wso2.carbon.user.api.RealmConfiguration; +import org.wso2.carbon.user.api.UserRealm; +import org.wso2.carbon.user.api.UserStoreException; + +import javax.servlet.ServletContext; + +import java.util.ArrayList; +import java.util.List; + +import static org.wso2.carbon.apimgt.webapp.publisher.APIPublisherUtil.buildApiConfig; + +/** + * This is the test class for {@link APIPublisherUtil} + */ +public class APIPublisherUtilTest extends BaseAPIPublisherTest { + + @BeforeTest + public void initialConfigs() throws Exception { + WebappPublisherConfig.init(); + RealmConfiguration configuration = new RealmConfiguration(); + UserRealm userRealm = new InMemoryRealmService().getUserRealm(configuration); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); + } + + @Test(description = "test buildAPIConfig method and ensures an APIConfig is created") + private void buildApiConfigTest() throws UserStoreException { + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + apiDef.setResources(resources); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } + + @Test(description = "test buildAPIConfig method as SuperTenant and ensures" + + " an APIConfig is created") + private void buildApiConfigTestAsSuperTenant() throws UserStoreException { + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + apiDef.setResources(resources); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } + + @Test(description = "test buildAPIConfig with API tags specified and ensures " + + "an APIConfig is created") + private void buildApiConfigTestWithTags() throws UserStoreException { + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + APIResource apiResource = new APIResource(); + resources.add(apiResource); + apiDef.setResources(resources); + apiDef.setTags(new String[]{"windows", "device_management"}); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } + + @Test(description = "test buildAPIConfig method with API scopes specified and " + + "ensures an APIConfig is created") + private void buildApiConfigTestWithScope() throws UserStoreException, APIManagerPublisherException { + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + APIResource apiResource = new APIResource(); + ApiScope apiScope = new ApiScope(); + apiScope.setDescription("testing"); + apiResource.setScope(apiScope); + resources.add(apiResource); + apiDef.setResources(resources); + apiDef.setTags(new String[]{"windows", "device_management"}); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } + +} + diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/utils/MockServletContext.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/utils/MockServletContext.java new file mode 100644 index 0000000000..d88dac206a --- /dev/null +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/utils/MockServletContext.java @@ -0,0 +1,285 @@ +/* +* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. +* +* WSO2 Inc. licenses this file to you 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. +*/ +package org.wso2.carbon.apimgt.webapp.publisher.utils; + +import javax.servlet.*; +import javax.servlet.descriptor.JspConfigDescriptor; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.util.Enumeration; +import java.util.EventListener; +import java.util.Map; +import java.util.Set; + +public class MockServletContext implements ServletContext { + @Override + public ServletContext getContext(String s) { + return null; + } + + @Override + public String getContextPath() { + return null; + } + + @Override + public int getMajorVersion() { + return 0; + } + + @Override + public int getMinorVersion() { + return 0; + } + + @Override + public int getEffectiveMajorVersion() { + return 0; + } + + @Override + public int getEffectiveMinorVersion() { + return 0; + } + + @Override + public String getMimeType(String s) { + return null; + } + + @Override + public Set getResourcePaths(String s) { + return null; + } + + @Override + public URL getResource(String s) throws MalformedURLException { + return null; + } + + @Override + public InputStream getResourceAsStream(String s) { + return null; + } + + @Override + public RequestDispatcher getRequestDispatcher(String s) { + return null; + } + + @Override + public RequestDispatcher getNamedDispatcher(String s) { + return null; + } + + @Override + public Servlet getServlet(String s) throws ServletException { + return null; + } + + @Override + public Enumeration getServlets() { + return null; + } + + @Override + public Enumeration getServletNames() { + return null; + } + + @Override + public void log(String s) { + + } + + @Override + public void log(Exception e, String s) { + + } + + @Override + public void log(String s, Throwable throwable) { + + } + + @Override + public String getRealPath(String s) { + return null; + } + + @Override + public String getServerInfo() { + return null; + } + + @Override + public String getInitParameter(String s) { + return "true"; + } + + @Override + public Enumeration getInitParameterNames() { + return null; + } + + @Override + public boolean setInitParameter(String s, String s1) { + return false; + } + + @Override + public Object getAttribute(String s) { + return null; + } + + @Override + public Enumeration getAttributeNames() { + return null; + } + + @Override + public void setAttribute(String s, Object o) { + + } + + @Override + public void removeAttribute(String s) { + + } + + @Override + public String getServletContextName() { + return null; + } + + @Override + public ServletRegistration.Dynamic addServlet(String s, String s1) { + return null; + } + + @Override + public ServletRegistration.Dynamic addServlet(String s, Servlet servlet) { + return null; + } + + @Override + public ServletRegistration.Dynamic addServlet(String s, Class aClass) { + return null; + } + + @Override + public T createServlet(Class aClass) throws ServletException { + return null; + } + + @Override + public ServletRegistration getServletRegistration(String s) { + return null; + } + + @Override + public Map getServletRegistrations() { + return null; + } + + @Override + public FilterRegistration.Dynamic addFilter(String s, String s1) { + return null; + } + + @Override + public FilterRegistration.Dynamic addFilter(String s, Filter filter) { + return null; + } + + @Override + public FilterRegistration.Dynamic addFilter(String s, Class aClass) { + return null; + } + + @Override + public T createFilter(Class aClass) throws ServletException { + return null; + } + + @Override + public FilterRegistration getFilterRegistration(String s) { + return null; + } + + @Override + public Map getFilterRegistrations() { + return null; + } + + @Override + public SessionCookieConfig getSessionCookieConfig() { + return null; + } + + @Override + public void setSessionTrackingModes(Set set) throws IllegalStateException, IllegalArgumentException { + + } + + @Override + public Set getDefaultSessionTrackingModes() { + return null; + } + + @Override + public Set getEffectiveSessionTrackingModes() { + return null; + } + + @Override + public void addListener(String s) { + + } + + @Override + public void addListener(T t) { + + } + + @Override + public void addListener(Class aClass) { + + } + + @Override + public T createListener(Class aClass) throws ServletException { + return null; + } + + @Override + public void declareRoles(String... strings) { + + } + + @Override + public ClassLoader getClassLoader() { + return null; + } + + @Override + public JspConfigDescriptor getJspConfigDescriptor() { + return null; + } +} From 62aef0b6f61cf91199029bc432ec7596f61c01f3 Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 17:27:02 +0530 Subject: [PATCH 2/7] making required changes --- .../publisher/APIPublisherUtilTest.java | 45 +++++++++++++------ 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index 790b8d3f37..718a609c24 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -18,6 +18,7 @@ package org.wso2.carbon.apimgt.webapp.publisher; import org.testng.Assert; +import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; import org.wso2.carbon.apimgt.webapp.publisher.config.APIResource; @@ -27,10 +28,12 @@ import org.wso2.carbon.apimgt.webapp.publisher.dto.ApiScope; import org.wso2.carbon.apimgt.webapp.publisher.exception.APIManagerPublisherException; import org.wso2.carbon.apimgt.webapp.publisher.utils.MockServletContext; import org.wso2.carbon.context.PrivilegedCarbonContext; +import org.wso2.carbon.registry.core.exceptions.RegistryException; import org.wso2.carbon.registry.core.jdbc.realm.InMemoryRealmService; import org.wso2.carbon.user.api.RealmConfiguration; import org.wso2.carbon.user.api.UserRealm; import org.wso2.carbon.user.api.UserStoreException; +import org.wso2.carbon.utils.multitenancy.MultitenantConstants; import javax.servlet.ServletContext; @@ -45,27 +48,31 @@ import static org.wso2.carbon.apimgt.webapp.publisher.APIPublisherUtil.buildApiC public class APIPublisherUtilTest extends BaseAPIPublisherTest { @BeforeTest - public void initialConfigs() throws Exception { + public void initialConfigs() throws WebappPublisherConfigurationFailedException, + org.wso2.carbon.user.core.UserStoreException, RegistryException { WebappPublisherConfig.init(); - RealmConfiguration configuration = new RealmConfiguration(); - UserRealm userRealm = new InMemoryRealmService().getUserRealm(configuration); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); + setUserRealm(); } @Test(description = "test buildAPIConfig method and ensures an APIConfig is created") - private void buildApiConfigTest() throws UserStoreException { - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); - ServletContext servletContext = new MockServletContext(); - APIResourceConfiguration apiDef = new APIResourceConfiguration(); - List resources = new ArrayList<>(); - apiDef.setResources(resources); - APIConfig apiConfig = buildApiConfig(servletContext, apiDef); - Assert.assertNotNull(apiConfig, "API configuration is null."); + private void buildApiConfigAsNonAdmin() throws UserStoreException, RegistryException { + try { + startTenantFlowAsNonAdmin(); + setUserRealm(); + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + apiDef.setResources(resources); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } finally { + PrivilegedCarbonContext.endTenantFlow(); + } } @Test(description = "test buildAPIConfig method as SuperTenant and ensures" + " an APIConfig is created") - private void buildApiConfigTestAsSuperTenant() throws UserStoreException { + private void buildApiConfigAdminUser() throws UserStoreException { ServletContext servletContext = new MockServletContext(); APIResourceConfiguration apiDef = new APIResourceConfiguration(); List resources = new ArrayList<>(); @@ -105,5 +112,15 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { Assert.assertNotNull(apiConfig, "API configuration is null."); } -} + private void setUserRealm() throws RegistryException, org.wso2.carbon.user.core.UserStoreException { + RealmConfiguration configuration = new RealmConfiguration(); + UserRealm userRealm = new InMemoryRealmService().getUserRealm(configuration); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); + } + private void startTenantFlowAsNonAdmin() { + PrivilegedCarbonContext.startTenantFlow(); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID, true); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername("test"); + } +} From 569d5d06aceb212f62ae89cc9a2e4d4bc6be840c Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 17:36:50 +0530 Subject: [PATCH 3/7] making required changes --- .../publisher/APIPublisherUtilTest.java | 30 +++++++------------ 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index 718a609c24..8a93773257 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -55,24 +55,20 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { } @Test(description = "test buildAPIConfig method and ensures an APIConfig is created") - private void buildApiConfigAsNonAdmin() throws UserStoreException, RegistryException { - try { - startTenantFlowAsNonAdmin(); - setUserRealm(); - ServletContext servletContext = new MockServletContext(); - APIResourceConfiguration apiDef = new APIResourceConfiguration(); - List resources = new ArrayList<>(); - apiDef.setResources(resources); - APIConfig apiConfig = buildApiConfig(servletContext, apiDef); - Assert.assertNotNull(apiConfig, "API configuration is null."); - } finally { - PrivilegedCarbonContext.endTenantFlow(); - } + private void buildApiConfigAsNonAdminUser() throws UserStoreException, RegistryException { + PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername("test"); + setUserRealm(); + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + apiDef.setResources(resources); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); } @Test(description = "test buildAPIConfig method as SuperTenant and ensures" + " an APIConfig is created") - private void buildApiConfigAdminUser() throws UserStoreException { + private void buildApiConfigAsAdminUser() throws UserStoreException { ServletContext servletContext = new MockServletContext(); APIResourceConfiguration apiDef = new APIResourceConfiguration(); List resources = new ArrayList<>(); @@ -117,10 +113,4 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { UserRealm userRealm = new InMemoryRealmService().getUserRealm(configuration); PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); } - - private void startTenantFlowAsNonAdmin() { - PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID, true); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername("test"); - } } From 77e735e5256a5ce763aff70ec70f9c3dcf29c9de Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 17:41:58 +0530 Subject: [PATCH 4/7] making required changes --- .../publisher/APIPublisherUtilTest.java | 30 ++++++++++++------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index 8a93773257..e84cdb6f08 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -55,20 +55,24 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { } @Test(description = "test buildAPIConfig method and ensures an APIConfig is created") - private void buildApiConfigAsNonAdminUser() throws UserStoreException, RegistryException { - PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername("test"); - setUserRealm(); - ServletContext servletContext = new MockServletContext(); - APIResourceConfiguration apiDef = new APIResourceConfiguration(); - List resources = new ArrayList<>(); - apiDef.setResources(resources); - APIConfig apiConfig = buildApiConfig(servletContext, apiDef); - Assert.assertNotNull(apiConfig, "API configuration is null."); + private void buildApiConfigTest() throws UserStoreException, RegistryException { + try { + startTenantFlowAsTestTenant(); + setUserRealm(); + ServletContext servletContext = new MockServletContext(); + APIResourceConfiguration apiDef = new APIResourceConfiguration(); + List resources = new ArrayList<>(); + apiDef.setResources(resources); + APIConfig apiConfig = buildApiConfig(servletContext, apiDef); + Assert.assertNotNull(apiConfig, "API configuration is null."); + } finally { + PrivilegedCarbonContext.endTenantFlow(); + } } @Test(description = "test buildAPIConfig method as SuperTenant and ensures" + " an APIConfig is created") - private void buildApiConfigAsAdminUser() throws UserStoreException { + private void buildApiConfigAsSuperTenat() throws UserStoreException { ServletContext servletContext = new MockServletContext(); APIResourceConfiguration apiDef = new APIResourceConfiguration(); List resources = new ArrayList<>(); @@ -113,4 +117,10 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { UserRealm userRealm = new InMemoryRealmService().getUserRealm(configuration); PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); } + + private void startTenantFlowAsTestTenant() { + PrivilegedCarbonContext.startTenantFlow(); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID, true); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); + } } From debbe011b39edde4c6c1dcb8de5063fe7ac498e3 Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 17:58:20 +0530 Subject: [PATCH 5/7] making changes --- .../carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index e84cdb6f08..72f51e1136 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -120,7 +120,8 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { private void startTenantFlowAsTestTenant() { PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(MultitenantConstants.SUPER_TENANT_ID, true); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(123, + false); PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); } } From 9c0f87d786a6a06386c6c6afc6ce3f0bdb209bde Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 17:59:07 +0530 Subject: [PATCH 6/7] making required changes --- .../carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index 72f51e1136..43ead14f7d 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -120,8 +120,6 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { private void startTenantFlowAsTestTenant() { PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(123, - false); PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); } } From ff3e71389d663cefdb24dc11be0db88eec4add99 Mon Sep 17 00:00:00 2001 From: Nirothipan Date: Thu, 12 Oct 2017 18:16:35 +0530 Subject: [PATCH 7/7] making changes requested --- .../apimgt/webapp/publisher/APIPublisherUtilTest.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java index 43ead14f7d..ca1bc1fba4 100644 --- a/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java +++ b/components/apimgt-extensions/org.wso2.carbon.apimgt.webapp.publisher/src/test/java/org/wso2/carbon/apimgt/webapp/publisher/APIPublisherUtilTest.java @@ -58,7 +58,6 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { private void buildApiConfigTest() throws UserStoreException, RegistryException { try { startTenantFlowAsTestTenant(); - setUserRealm(); ServletContext servletContext = new MockServletContext(); APIResourceConfiguration apiDef = new APIResourceConfiguration(); List resources = new ArrayList<>(); @@ -118,8 +117,10 @@ public class APIPublisherUtilTest extends BaseAPIPublisherTest { PrivilegedCarbonContext.getThreadLocalCarbonContext().setUserRealm(userRealm); } - private void startTenantFlowAsTestTenant() { + private void startTenantFlowAsTestTenant() throws org.wso2.carbon.user.core.UserStoreException, RegistryException { PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test"); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(1212); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain("test.com"); + setUserRealm(); } }