diff options
Diffstat (limited to 'catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java')
-rw-r--r-- | catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java | 144 |
1 files changed, 76 insertions, 68 deletions
diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java index 3e83199a4c..ad97e02be6 100644 --- a/catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java +++ b/catalog-be/src/test/java/org/openecomp/sdc/be/servlets/UserEndpointTest.java @@ -20,8 +20,22 @@ package org.openecomp.sdc.be.servlets; +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; +import static org.openecomp.sdc.be.dao.utils.UserStatusEnum.ACTIVE; +import static org.openecomp.sdc.be.dao.utils.UserStatusEnum.INACTIVE; +import static org.openecomp.sdc.be.user.Role.ADMIN; +import static org.openecomp.sdc.be.user.Role.DESIGNER; + import com.fasterxml.jackson.databind.DeserializationFeature; import fj.data.Either; +import java.util.ArrayList; +import javax.ws.rs.client.Entity; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response; import org.eclipse.jetty.http.HttpStatus; import org.glassfish.jersey.client.ClientConfig; import org.glassfish.jersey.jackson.internal.jackson.jaxrs.json.JacksonJaxbJsonProvider; @@ -31,9 +45,10 @@ import org.glassfish.jersey.media.multipart.MultiPartFeature; import org.glassfish.jersey.server.ResourceConfig; import org.glassfish.jersey.test.TestProperties; import org.janusgraph.graphdb.types.system.EmptyVertex; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.openecomp.sdc.be.components.lifecycle.LifecycleBusinessLogic; import org.openecomp.sdc.be.dao.janusgraph.JanusGraphGenericDao; import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus; @@ -54,26 +69,11 @@ import org.openecomp.sdc.common.api.Constants; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Import; -import javax.ws.rs.client.Entity; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import java.util.ArrayList; - -import static org.assertj.core.api.Assertions.assertThat; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; -import static org.openecomp.sdc.be.dao.utils.UserStatusEnum.ACTIVE; -import static org.openecomp.sdc.be.dao.utils.UserStatusEnum.INACTIVE; -import static org.openecomp.sdc.be.user.Role.ADMIN; -import static org.openecomp.sdc.be.user.Role.DESIGNER; - -public class UserEndpointTest extends JerseySpringBaseTest { +class UserEndpointTest extends JerseySpringBaseTest { - static final String USER_ID = "jh0003"; - static final String NEW_USER_ID = "ab0001"; - static final String MODIFIER_ID = "admin1"; + private static final String USER_ID = "jh0003"; + private static final String NEW_USER_ID = "ab0001"; + private static final String MODIFIER_ID = "admin1"; private static ComponentsUtils componentUtils; private static JanusGraphGenericDao janusGraphGenericDao; @@ -81,7 +81,6 @@ public class UserEndpointTest extends JerseySpringBaseTest { private static LifecycleBusinessLogic lifecycleBusinessLogic; private static UserOperation facadeUserOperation; - private UserData userData = new UserData(); private UserData modifierData = new UserData(); @@ -102,7 +101,8 @@ public class UserEndpointTest extends JerseySpringBaseTest { @Bean UserBusinessLogicExt userBusinessLogicExt() { - return new UserBusinessLogicExt(userBusinessLogic(), userAdminOperation(), lifecycleBusinessLogic, componentUtils); + return new UserBusinessLogicExt(userBusinessLogic(), userAdminOperation(), lifecycleBusinessLogic, + componentUtils); } @Bean @@ -111,7 +111,7 @@ public class UserEndpointTest extends JerseySpringBaseTest { } } - @BeforeClass + @BeforeAll public static void initClass() { janusGraphGenericDao = mock(JanusGraphGenericDao.class); componentUtils = mock(ComponentsUtils.class); @@ -120,18 +120,26 @@ public class UserEndpointTest extends JerseySpringBaseTest { facadeUserOperation = mock(UserOperation.class); } - @Before - public void setup() { + @BeforeEach + public void before() throws Exception { + super.setUp(); setUserProperties(userData, USER_ID, DESIGNER, ACTIVE); setUserProperties(modifierData, MODIFIER_ID, ADMIN, ACTIVE); Either<UserData, JanusGraphOperationStatus> janusGraphValidUser = Either.left(userData); Either<UserData, JanusGraphOperationStatus> janusGraphValidModifier = Either.left(modifierData); when(janusGraphGenericDao.getNode(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), USER_ID, UserData.class)) - .thenReturn(janusGraphValidUser); - when(janusGraphGenericDao.getNode(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), MODIFIER_ID, UserData.class)) - .thenReturn(janusGraphValidModifier); - when(janusGraphGenericDao.getNode(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), NEW_USER_ID, UserData.class)) - .thenReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)); + .thenReturn(janusGraphValidUser); + when(janusGraphGenericDao + .getNode(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), MODIFIER_ID, UserData.class)) + .thenReturn(janusGraphValidModifier); + when(janusGraphGenericDao + .getNode(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), NEW_USER_ID, UserData.class)) + .thenReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)); + } + + @AfterEach + void after() throws Exception { + super.tearDown(); } private void setUserProperties(UserData user, String userId, Role role, UserStatusEnum statusEnum) { @@ -143,7 +151,7 @@ public class UserEndpointTest extends JerseySpringBaseTest { @Override protected void configureClient(ClientConfig config) { final JacksonJsonProvider jacksonJsonProvider = new JacksonJaxbJsonProvider() - .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); config.register(jacksonJsonProvider); config.register(MultiPartFeature.class); } @@ -152,50 +160,50 @@ public class UserEndpointTest extends JerseySpringBaseTest { protected ResourceConfig configure() { forceSet(TestProperties.CONTAINER_PORT, "0"); return super.configure(UserEndpointTest.UserTestConfig.class) - .register(UserAdminServlet.class) - .property(LoggingFeature.LOGGING_FEATURE_LOGGER_LEVEL_SERVER, "WARNING"); + .register(UserAdminServlet.class) + .property(LoggingFeature.LOGGING_FEATURE_LOGGER_LEVEL_SERVER, "WARNING"); } @Test - public void getUser_success() { + void getUser_success() { User user = target().path("/v1/user/" + USER_ID) - .request(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, USER_ID) - .get(User.class); + .request(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, USER_ID) + .get(User.class); assertThat(user.getUserId()).isEqualTo(USER_ID); } @Test - public void getUserRole_success() { + void getUserRole_success() { String result = target().path("/v1/user/" + USER_ID + "/role") - .request(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, MODIFIER_ID) - .get(String.class); + .request(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, MODIFIER_ID) + .get(String.class); assertThat(result).isEqualTo("{ \"role\" : \"" + DESIGNER.name() + "\" }"); } @Test - public void updateUserRole_success() { + void updateUserRole_success() { UserAdminServlet.UserRole role = new UserAdminServlet.UserRole(); role.setRole(ADMIN); EmptyVertex emptyVertex = new EmptyVertex(); UserData updatedUser = new UserData(); setUserProperties(updatedUser, USER_ID, ADMIN, ACTIVE); when(janusGraphGenericDao.getVertexByProperty(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), USER_ID)) - .thenReturn(Either.left(emptyVertex)); + .thenReturn(Either.left(emptyVertex)); when(janusGraphGenericDao.getOutgoingEdgesByCriteria(eq(emptyVertex), eq(GraphEdgeLabels.STATE), any())) - .thenReturn(Either.left(new ArrayList<>())); + .thenReturn(Either.left(new ArrayList<>())); when(janusGraphGenericDao.updateNode(eq(updatedUser), eq(UserData.class))).thenReturn(Either.left(updatedUser)); User user = target().path("/v1/user/" + USER_ID + "/role") - .request(MediaType.APPLICATION_JSON) - .accept(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, MODIFIER_ID) - .post(Entity.entity(role, MediaType.APPLICATION_JSON),User.class); + .request(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, MODIFIER_ID) + .post(Entity.entity(role, MediaType.APPLICATION_JSON), User.class); assertThat(user.getRole()).isEqualTo(ADMIN.name()); } @Test - public void createUser_success() { + void createUser_success() { User newUser = new User(); newUser.setUserId(NEW_USER_ID); UserData updatedUser = new UserData(); @@ -203,9 +211,9 @@ public class UserEndpointTest extends JerseySpringBaseTest { //when(janusGraphGenericDao.updateNode(any(), eq(UserData.class))).thenReturn(Either.left(updatedUser)); when(janusGraphGenericDao.createNode(any(), eq(UserData.class))).thenReturn(Either.left(updatedUser)); Response response = target().path("/v1/user") - .request(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, MODIFIER_ID) - .post(Entity.entity(newUser, MediaType.APPLICATION_JSON),Response.class); + .request(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, MODIFIER_ID) + .post(Entity.entity(newUser, MediaType.APPLICATION_JSON), Response.class); assertThat(response.getStatus()).isEqualTo(HttpStatus.CREATED_201); User createdUser = response.readEntity(User.class); assertThat(createdUser.getUserId()).isEqualTo(NEW_USER_ID); @@ -213,33 +221,33 @@ public class UserEndpointTest extends JerseySpringBaseTest { } @Test - public void authorizeUser_success() { + void authorizeUser_success() { when(janusGraphGenericDao.updateNode(any(), eq(UserData.class))).thenReturn(Either.left(userData)); User user = target().path("/v1/user/authorize") - .request(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, USER_ID) - .header("HTTP_CSP_FIRSTNAME", "Jimmy") - .header("HTTP_CSP_LASTNAME", "Hendrix") - .header("HTTP_CSP_EMAIL", "admin@sdc.com") - .get(User.class); + .request(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, USER_ID) + .header("HTTP_CSP_FIRSTNAME", "Jimmy") + .header("HTTP_CSP_LASTNAME", "Hendrix") + .header("HTTP_CSP_EMAIL", "admin@sdc.com") + .get(User.class); assertThat(user.getUserId()).isEqualTo(USER_ID); } @Test - public void deactivateUser_success() { + void deactivateUser_success() { EmptyVertex emptyVertex = new EmptyVertex(); UserData updatedUser = new UserData(); setUserProperties(updatedUser, USER_ID, DESIGNER, INACTIVE); when(janusGraphGenericDao.getVertexByProperty(UniqueIdBuilder.getKeyByNodeType(NodeTypeEnum.User), USER_ID)) - .thenReturn(Either.left(emptyVertex)); + .thenReturn(Either.left(emptyVertex)); when(janusGraphGenericDao.getOutgoingEdgesByCriteria(eq(emptyVertex), eq(GraphEdgeLabels.STATE), any())) - .thenReturn(Either.left(new ArrayList<>())); + .thenReturn(Either.left(new ArrayList<>())); when(janusGraphGenericDao.updateNode(eq(updatedUser), eq(UserData.class))).thenReturn(Either.left(updatedUser)); User user = target().path("/v1/user/" + USER_ID) - .request(MediaType.APPLICATION_JSON) - .accept(MediaType.APPLICATION_JSON) - .header(Constants.USER_ID_HEADER, MODIFIER_ID) - .delete(User.class); + .request(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON) + .header(Constants.USER_ID_HEADER, MODIFIER_ID) + .delete(User.class); assertThat(user.getUserId()).isEqualTo(USER_ID); } |