From 3710a41879717441884c75262015c536819a34c2 Mon Sep 17 00:00:00 2001 From: Pamela Dragosh Date: Fri, 21 Feb 2020 12:48:49 -0500 Subject: Fix policycreation test This test was only performing code coverage, it should have revealed that IllegalArgument exceptions were incorrect. Fixed bug in savePolicy when an exception being thrown has a null message. Added warning and error messages for debugging in the future. Issue-ID: POLICY-1590 Change-Id: Ie32a73adbaf944f96e411a2c612cd8293382911c Signed-off-by: Pamela Dragosh --- .../rest/policycontroller/PolicyCreationTest.java | 67 +++++++++++++--------- 1 file changed, 39 insertions(+), 28 deletions(-) (limited to 'ONAP-PAP-REST/src/test') diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/policycontroller/PolicyCreationTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/policycontroller/PolicyCreationTest.java index c182b9bb5..953fff35c 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/policycontroller/PolicyCreationTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/policycontroller/PolicyCreationTest.java @@ -20,20 +20,16 @@ package org.onap.policy.pap.xacml.rest.policycontroller; -import static org.assertj.core.api.Assertions.assertThatCode; -import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.ArgumentMatchers.eq; - -import com.mockrunner.mock.web.MockHttpServletRequest; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.LinkedList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.SessionFactory; @@ -47,8 +43,10 @@ import org.onap.policy.rest.jpa.PolicyDbDaoEntity; import org.onap.policy.rest.jpa.PolicyVersion; import org.powermock.reflect.Whitebox; import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.mock.web.MockHttpServletResponse; +import com.mockrunner.mock.web.MockHttpServletRequest; public class PolicyCreationTest { @Test @@ -66,7 +64,7 @@ public class PolicyCreationTest { Exception cause = new Exception("oops"); HttpMessageNotReadableException exception = new HttpMessageNotReadableException("oops", cause); assertEquals(HttpStatus.BAD_REQUEST, - creation.messageNotReadableExceptionHandler(req, exception).getStatusCode()); + creation.messageNotReadableExceptionHandler(req, exception).getStatusCode()); HttpServletResponse response = new MockHttpServletResponse(); PolicyRestAdapter policyData = new PolicyRestAdapter(); @@ -74,31 +72,39 @@ public class PolicyCreationTest { policyData.setConfigPolicyType("ClosedLoop_Fault"); policyData.setDomainDir("domain"); policyData.setPolicyName("policyname"); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + ResponseEntity responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); version.setHigherVersion(1); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setEditPolicy(true); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setEditPolicy(false); version.setHigherVersion(0); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setEditPolicy(true); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); version.setHigherVersion(1); policyData.setConfigPolicyType("Firewall Config"); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setConfigPolicyType("BRMS_Raw"); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); + policyData.setConfigPolicyType("BRMS_Param"); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); + policyData.setConfigPolicyType("Base"); Mockito.when(policyData.getRuleData()).thenReturn(new LinkedHashMap<>()); @@ -116,26 +122,31 @@ public class PolicyCreationTest { PolicyDbDaoTransaction mockTransaction = Mockito.mock(PolicyDbDaoTransaction.class); Mockito.when(mockPolicyDbDao.getNewTransaction()).thenReturn(mockTransaction); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); + policyData.setConfigPolicyType("ClosedLoop_PM"); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); + policyData.setConfigPolicyType("Micro Service"); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); + policyData.setConfigPolicyType("Optimization"); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setPolicyType("Action"); - List choices = new ArrayList(); + List choices = new ArrayList<>(); policyData.setRuleAlgorithmschoices(choices); - assertThatCode(() -> creation.savePolicy(policyData, response)).doesNotThrowAnyException(); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); policyData.setPolicyType("Decision"); - List settings = new ArrayList(); + List settings = new ArrayList<>(); policyData.setSettings(settings); - assertThatThrownBy(() -> creation.savePolicy(policyData, response)) - .isInstanceOf(IllegalArgumentException.class); + responseEntity = creation.savePolicy(policyData, response); + assertThat(responseEntity).isNotNull(); } } -- cgit 1.2.3-korg