From a89c613095622ccb529483c0ad37d7f23048989e Mon Sep 17 00:00:00 2001 From: Wojciech Sliwka Date: Tue, 22 Jan 2019 14:49:40 +0100 Subject: Replaced tests for roles Issue-ID: VID-388 Change-Id: I7c8c4ec50312f7ccd3a40eb2568cb8181f50b5d8 Signed-off-by: Wojciech Sliwka --- .../java/org/onap/vid/roles/RoleValidatorTest.java | 105 ++++++++++++++------- 1 file changed, 71 insertions(+), 34 deletions(-) (limited to 'vid-app-common/src/test/java/org/onap/vid/roles/RoleValidatorTest.java') diff --git a/vid-app-common/src/test/java/org/onap/vid/roles/RoleValidatorTest.java b/vid-app-common/src/test/java/org/onap/vid/roles/RoleValidatorTest.java index b303b257c..adb257b01 100644 --- a/vid-app-common/src/test/java/org/onap/vid/roles/RoleValidatorTest.java +++ b/vid-app-common/src/test/java/org/onap/vid/roles/RoleValidatorTest.java @@ -1,59 +1,96 @@ package org.onap.vid.roles; -import org.junit.Test; + +import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; import org.onap.vid.mso.rest.RequestDetails; +import org.testng.annotations.BeforeMethod; +import org.testng.annotations.Test; + +import java.util.List; +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; public class RoleValidatorTest { - private RoleValidator createTestSubject() { - return new RoleValidator(null); + private static final String SAMPLE_SUBSCRIBER = "sampleSubscriber"; + private static final String NOT_MATCHING_SUBSCRIBER = "notMatchingSubscriber"; + private static final String SAMPLE_SERVICE_TYPE = "sampleServiceType"; + private static final String NOT_MATCHING_TENANT = "notMatchingTenant"; + private static final String SAMPLE_TENANT = "sampleTenant"; + + private static final Role SAMPLE_ROLE = new Role(EcompRole.READ, SAMPLE_SUBSCRIBER, SAMPLE_SERVICE_TYPE, SAMPLE_TENANT); + + private List roles = ImmutableList.of(SAMPLE_ROLE); + private Map subscriberInfo = ImmutableMap.of("globalSubscriberId", SAMPLE_SUBSCRIBER); + private Map requestParameters = ImmutableMap.of("subscriptionServiceType", SAMPLE_SERVICE_TYPE); + private Map requestDetailsProperties = ImmutableMap.of("subscriberInfo", subscriberInfo, "requestParameters", requestParameters); + private RequestDetails requestDetails; + private RoleValidator roleValidator; + + @BeforeMethod + public void setUp() { + roleValidator = new RoleValidator(roles); + roleValidator.enableRoles(); + requestDetails = new RequestDetails(); } @Test - public void testIsMsoRequestValid() throws Exception { - RoleValidator testSubject; - RequestDetails mso_request = null; - boolean result; + public void shouldPermitSubscriberWhenNameMatchesAndRolesAreEnabled() { + assertThat(roleValidator.isSubscriberPermitted(SAMPLE_SUBSCRIBER)).isTrue(); + } - // default test - testSubject = createTestSubject(); - result = testSubject.isMsoRequestValid(mso_request); + @Test + public void shouldNotPermitSubscriberWhenNameNotMatches() { + assertThat(roleValidator.isSubscriberPermitted(NOT_MATCHING_SUBSCRIBER)).isFalse(); } @Test - public void testIsServicePermitted() throws Exception { - RoleValidator testSubject; - String subscriberName = ""; - String serviceType = ""; - boolean result; + public void shouldPermitServiceWhenNamesMatches() { + assertThat(roleValidator.isServicePermitted(SAMPLE_SUBSCRIBER, SAMPLE_SERVICE_TYPE)).isTrue(); + } - // default test - testSubject = createTestSubject(); - result = testSubject.isServicePermitted(subscriberName, serviceType); + + @Test + public void shouldNotPermitServiceWhenSubscriberNameNotMatches() { + assertThat(roleValidator.isServicePermitted(NOT_MATCHING_SUBSCRIBER, SAMPLE_SERVICE_TYPE)).isFalse(); } @Test - public void testIsSubscriberPermitted() throws Exception { - RoleValidator testSubject; - String subscriberName = ""; - boolean result; + public void shouldNotPermitServiceWhenServiceTypeNotMatches() { + assertThat(roleValidator.isServicePermitted(SAMPLE_SUBSCRIBER, NOT_MATCHING_SUBSCRIBER)).isFalse(); + } - // default test - testSubject = createTestSubject(); - result = testSubject.isSubscriberPermitted(subscriberName); + @Test + public void shouldPermitTenantWhenNameMatches() { + assertThat(roleValidator.isTenantPermitted(SAMPLE_SUBSCRIBER, SAMPLE_SERVICE_TYPE, SAMPLE_TENANT)).isTrue(); + } + + + @Test + public void shouldNotPermitTenantWhenNameNotMatches() { + assertThat(roleValidator.isTenantPermitted(SAMPLE_SUBSCRIBER, SAMPLE_SERVICE_TYPE, NOT_MATCHING_TENANT)).isFalse(); } @Test - public void testIsTenantPermitted() throws Exception { - RoleValidator testSubject; - String globalCustomerId = ""; - String serviceType = ""; - String tenantName = ""; - boolean result; + public void shouldValidateProperlySORequest() { + requestDetails.setAdditionalProperty("requestDetails", requestDetailsProperties); - // default test - testSubject = createTestSubject(); - result = testSubject.isTenantPermitted(globalCustomerId, serviceType, tenantName); + assertThat(roleValidator.isMsoRequestValid(requestDetails)).isTrue(); } + @Test + public void shouldValidateUnknownSORequest() { + assertThat(roleValidator.isMsoRequestValid(new RequestDetails())).isTrue(); + } + + @Test + public void shouldRejectSORequestWhenSubscriberNotMatches() { + Map subscriberInfo = ImmutableMap.of("globalSubscriberId", "sample"); + Map requestDetailsProperties = ImmutableMap.of("subscriberInfo", subscriberInfo, "requestParameters", requestParameters); + requestDetails.setAdditionalProperty("requestDetails", requestDetailsProperties); + + assertThat(roleValidator.isMsoRequestValid(requestDetails)).isFalse(); + } } \ No newline at end of file -- cgit 1.2.3-korg