diff options
Diffstat (limited to 'vid-app-common/src/test')
-rw-r--r-- | vid-app-common/src/test/java/org/onap/vid/controller/ControllersUtilsTest.java | 113 | ||||
-rw-r--r-- | vid-app-common/src/test/java/org/onap/vid/mso/rest/TaskTest.java | 64 |
2 files changed, 158 insertions, 19 deletions
diff --git a/vid-app-common/src/test/java/org/onap/vid/controller/ControllersUtilsTest.java b/vid-app-common/src/test/java/org/onap/vid/controller/ControllersUtilsTest.java new file mode 100644 index 000000000..f084b3dec --- /dev/null +++ b/vid-app-common/src/test/java/org/onap/vid/controller/ControllersUtilsTest.java @@ -0,0 +1,113 @@ +/*- + * ============LICENSE_START======================================================= + * VID + * ================================================================================ + * Copyright (C) 2019 Nokia. + * ================================================================================ + * 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.vid.controller; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.BDDMockito.given; + +import javax.servlet.http.HttpServletRequest; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Answers; +import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; +import org.onap.portalsdk.core.domain.User; +import org.onap.portalsdk.core.util.SystemProperties; +import org.onap.vid.utils.SystemPropertiesWrapper; + +@RunWith(MockitoJUnitRunner.class) +public class ControllersUtilsTest { + + private static final String USER_ATTRIBUTE = "userAttribute"; + @Mock + private SystemPropertiesWrapper systemPropertiesWrapper; + @Mock(answer = Answers.RETURNS_DEEP_STUBS) + private HttpServletRequest httpServletRequest; + + @Test + public void shouldExtractLoginIdAsUserId_fromHttpServletRequest() { + // GIVEN + String expectedUserId = "rootUser"; + given(systemPropertiesWrapper.getProperty(SystemProperties.USER_ATTRIBUTE_NAME)).willReturn(USER_ATTRIBUTE); + User user = new User(); + user.setLoginId(expectedUserId); + given(httpServletRequest.getSession().getAttribute(USER_ATTRIBUTE)).willReturn(user); + + // WHEN + String loginId = new ControllersUtils(systemPropertiesWrapper).extractUserId(httpServletRequest); + + // THEN + assertThat(loginId).isEqualTo(expectedUserId); + } + + @Test + public void shouldExtractOrgUserIdAsUserId_fromHttpServletRequest_whenLoginIdIsNull() { + // GIVEN + String expectedUserId = "secondUser"; + given(systemPropertiesWrapper.getProperty(SystemProperties.USER_ATTRIBUTE_NAME)).willReturn(USER_ATTRIBUTE); + User user = new User(); + user.setOrgUserId(expectedUserId); + given(httpServletRequest.getSession().getAttribute(USER_ATTRIBUTE)).willReturn(user); + + // WHEN + String loginId = new ControllersUtils(systemPropertiesWrapper).extractUserId(httpServletRequest); + + // THEN + assertThat(loginId).isEqualTo(expectedUserId); + } + + @Test + public void shouldReturnEmptyString_whenBothLoginIdAndOrgUserIdAreNull() { + // GIVEN + given(systemPropertiesWrapper.getProperty(SystemProperties.USER_ATTRIBUTE_NAME)).willReturn(USER_ATTRIBUTE); + given(httpServletRequest.getSession().getAttribute(USER_ATTRIBUTE)).willReturn(new User()); + + // WHEN + String loginId = new ControllersUtils(systemPropertiesWrapper).extractUserId(httpServletRequest); + + // THEN + assertThat(loginId).isEmpty(); + } + + @Test + public void shouldReturnEmptyString_whenSessionIsNull() { + // GIVEN + given(httpServletRequest.getSession()).willReturn(null); + + // WHEN + String loginId = new ControllersUtils(systemPropertiesWrapper).extractUserId(httpServletRequest); + + // THEN + assertThat(loginId).isEmpty(); + } + + @Test + public void shouldReturnEmptyString_whenUserIsNull() { + // GIVEN + given(systemPropertiesWrapper.getProperty(SystemProperties.USER_ATTRIBUTE_NAME)).willReturn(USER_ATTRIBUTE); + given(httpServletRequest.getSession().getAttribute(USER_ATTRIBUTE)).willReturn(null); + + // WHEN + String loginId = new ControllersUtils(systemPropertiesWrapper).extractUserId(httpServletRequest); + + // THEN + assertThat(loginId).isEmpty(); + } +}
\ No newline at end of file diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/rest/TaskTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/rest/TaskTest.java index f6d0c763f..d78627557 100644 --- a/vid-app-common/src/test/java/org/onap/vid/mso/rest/TaskTest.java +++ b/vid-app-common/src/test/java/org/onap/vid/mso/rest/TaskTest.java @@ -34,25 +34,36 @@ import org.testng.annotations.Test; public class TaskTest { private final ObjectMapper mapper = new ObjectMapper(); - private final String TASK_JSON = "" - + "{ " - + " \"taskId\": \"taskId\", " - + " \"type\": \"type\", " - + " \"nfRole\": \"nfRole\", " - + " \"subscriptionServiceType\": \"subscriptionServiceType\", " - + " \"originalRequestId\": \"originalRequestId\", " - + " \"originalRequestorId\": \"originalRequestorId\", " - + " \"buildingBlockName\": \"buildingBlockName\", " - + " \"buildingBlockStep\": \"buildingBlockStep\", " - + " \"errorSource\": \"errorSource\", " - + " \"errorCode\": \"errorCode\", " - + " \"errorMessage\": \"errorMessage\", " - + " \"validResponses\": [ " - + " \"a\", " - + " \"b\", " - + " \"c\" " - + " ] " - + "} "; + + private String templateTaskJson(String insertion) { + return "" + + "{ " + + " \"taskId\": \"taskId\", " + + " \"type\": \"type\", " + + " \"nfRole\": \"nfRole\", " + + " \"subscriptionServiceType\": \"subscriptionServiceType\", " + + " \"originalRequestId\": \"originalRequestId\", " + + " \"originalRequestorId\": \"originalRequestorId\", " + + " \"buildingBlockName\": \"buildingBlockName\", " + + " \"buildingBlockStep\": \"buildingBlockStep\", " + + " \"errorSource\": \"errorSource\", " + + " \"errorCode\": \"errorCode\", " + + " \"errorMessage\": \"errorMessage\", " + + insertion + + " \"validResponses\": [ " + + " \"a\", " + + " \"b\", " + + " \"c\" " + + " ] " + + "} "; + } + + private final String TASK_JSON = templateTaskJson("" + + " \"description\": \"description\", " + + " \"timeout\": \"timeout\", " + ); + + private final String TASK_JSON_WITHOUT_TIMEOUT = templateTaskJson(""); private Task newTaskWithPopulatedFields() { Task task = TestUtils.setStringsInStringProperties(new Task()); @@ -80,4 +91,19 @@ public class TaskTest { is(newTaskWithPopulatedFields()) ); } + + @Test + public void deserializeTaskWithoutTimeout() throws IOException { + /* + SO may return no timeout, and therefore no description as well + */ + final Task taskWithoutTimeout = newTaskWithPopulatedFields(); + taskWithoutTimeout.setDescription(null); + taskWithoutTimeout.setTimeout(null); + + assertThat( + mapper.readValue(TASK_JSON_WITHOUT_TIMEOUT, Task.class), + is(taskWithoutTimeout) + ); + } } |