diff options
Diffstat (limited to 'src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java')
-rw-r--r-- | src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java | 296 |
1 files changed, 0 insertions, 296 deletions
diff --git a/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java b/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java deleted file mode 100644 index 5b4e405bb..000000000 --- a/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java +++ /dev/null @@ -1,296 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP POLICY-CLAMP - * ================================================================================ - * Copyright (C) 2019, 2021 AT&T Intellectual Property. All rights - * reserved. - * ================================================================================ - * 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.policy.clamp.loop; - -import static org.assertj.core.api.Assertions.assertThat; - -import com.google.gson.Gson; -import com.google.gson.JsonObject; -import java.io.IOException; -import org.apache.camel.Exchange; -import org.apache.camel.Message; -import org.junit.Test; -import org.mockito.Mockito; -import org.onap.policy.clamp.clds.util.ResourceFileUtils; -import org.onap.policy.clamp.loop.components.external.ExternalComponentState; -import org.onap.policy.clamp.loop.components.external.PolicyComponent; -import org.onap.policy.clamp.loop.template.LoopTemplate; -import org.onap.policy.clamp.loop.template.PolicyModel; -import org.onap.policy.clamp.policy.microservice.MicroServicePolicy; -import org.onap.policy.clamp.policy.operational.OperationalPolicy; -import org.skyscreamer.jsonassert.JSONAssert; - -public class PolicyComponentTest { - - /** - * Test the computeState method. - * oldState newState expectedFinalState - * NOT_SENT SENT_AND_DEPLOYED NOT_SENT - * NOT_SENT SENT NOT_SENT - * NOT_SENT NOT_SENT NOT_SENT - * NOT_SENT IN_ERROR IN_ERROR - */ - @Test - public void computeStateTestOriginalStateUnknown() { - Exchange exchange = Mockito.mock(Exchange.class); - Message message = Mockito.mock(Message.class); - Exchange exchange2 = Mockito.mock(Exchange.class); - Mockito.when(exchange.getIn()).thenReturn(message); - Mockito.when(message.getExchange()).thenReturn(exchange2); - // policy found + deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - PolicyComponent policy = new PolicyComponent(); - - ExternalComponentState state = policy.computeState(exchange); - assertThat(state.getStateName()).isEqualTo("SENT_AND_DEPLOYED"); - // policy found + not deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state2 = policy.computeState(exchange); - assertThat(state2.getStateName()).isEqualTo("SENT"); - // policy not found + not deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state4 = policy.computeState(exchange); - assertThat(state4.getStateName()).isEqualTo("NOT_SENT"); - // policy not found + deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state3 = policy.computeState(exchange); - assertThat(state3.getStateName()).isEqualTo("IN_ERROR"); - } - - /** - * Test the computeState method. - * oldState newState expectedFinalState - * NOT_SENT SENT_AND_DEPLOYED NOT_SENT - * NOT_SENT SENT NOT_SENT - * NOT_SENT NOT_SENT NOT_SENT - * NOT_SENT IN_ERROR IN_ERROR - */ - @Test - public void computeStateTestOriginalStateNotSent() { - Exchange exchange = Mockito.mock(Exchange.class); - Message message = Mockito.mock(Message.class); - Exchange exchange2 = Mockito.mock(Exchange.class); - Mockito.when(exchange.getIn()).thenReturn(message); - Mockito.when(message.getExchange()).thenReturn(exchange2); - // policy found + deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - PolicyComponent policy = new PolicyComponent(); - ExternalComponentState notSent = new ExternalComponentState("NOT_SENT", - "The policies defined have NOT yet been created on the policy engine", 90); - policy.setState(notSent); - ExternalComponentState state = policy.computeState(exchange); - assertThat(state.getStateName()).isEqualTo("NOT_SENT"); - // policy found + not deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state2 = policy.computeState(exchange); - assertThat(state2.getStateName()).isEqualTo("NOT_SENT"); - // policy not found + not deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state4 = policy.computeState(exchange); - assertThat(state4.getStateName()).isEqualTo("NOT_SENT"); - // policy not found + deployed - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state3 = policy.computeState(exchange); - assertThat(state3.getStateName()).isEqualTo("IN_ERROR"); - } - - - /** - * Test the computeState method. - * oldState newState expectedFinalState - * SENT SENT SENT - * SENT SENT_AND_DEPLOYED SENT - * SENT IN_ERROR IN_ERROR - * SENT NOT_SENT NOT_SENT - */ - @Test - public void computeStateTestOriginalStateSent() throws IOException { - Exchange exchange = Mockito.mock(Exchange.class); - Message message = Mockito.mock(Message.class); - Exchange exchange2 = Mockito.mock(Exchange.class); - Mockito.when(exchange.getIn()).thenReturn(message); - Mockito.when(message.getExchange()).thenReturn(exchange2); - PolicyComponent policy = new PolicyComponent(); - ExternalComponentState sent = new ExternalComponentState("SENT", - "The policies defined have been created but NOT deployed on the policy engine", 50); - policy.setState(sent); - // new policy state SENT - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state = policy.computeState(exchange); - assertThat(state.getStateName()).isEqualTo("SENT"); - // new policy state SENT_AND_DEPLOYED - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state2 = policy.computeState(exchange); - assertThat(state2.getStateName()).isEqualTo("SENT"); - // new policy state IN_ERROR - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state3 = policy.computeState(exchange); - assertThat(state3.getStateName()).isEqualTo("IN_ERROR"); - // new policy state NOT_SENT - policy.setState(sent); - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state4 = policy.computeState(exchange); - assertThat(state4.getStateName()).isEqualTo("NOT_SENT"); - } - - /** - * Test the computeState method. - * oldState newState expectedFinalState - * SENT_AND_DEPLOYED SENT_AND_DEPLOYED SENT_AND_DEPLOYED - * SENT_AND_DEPLOYED SENT SENT - * SENT_AND_DEPLOYED IN_ERROR IN_ERROR - * SENT_AND_DEPLOYED NOT_SENT NOT_SENT - */ - @Test - public void computeStateTestOriginalStateSentAndDeployed() throws IOException { - Exchange exchange = Mockito.mock(Exchange.class); - Message message = Mockito.mock(Message.class); - Exchange exchange2 = Mockito.mock(Exchange.class); - Mockito.when(exchange.getIn()).thenReturn(message); - Mockito.when(message.getExchange()).thenReturn(exchange2); - PolicyComponent policy = new PolicyComponent(); - ExternalComponentState sendDeployed = new ExternalComponentState("SENT_AND_DEPLOYED", - "The policies defined have been created and deployed on the policy engine", 10); - policy.setState(sendDeployed); - // new policy state SENT_AND_DEPLOYED - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state = policy.computeState(exchange); - assertThat(state.getStateName()).isEqualTo("SENT_AND_DEPLOYED"); - // new policy state SENT - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state2 = policy.computeState(exchange); - assertThat(state2.getStateName()).isEqualTo("SENT"); - // new policy state IN_ERROR - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state3 = policy.computeState(exchange); - assertThat(state3.getStateName()).isEqualTo("IN_ERROR"); - // new policy state NOT_SENT - policy.setState(sendDeployed); - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state4 = policy.computeState(exchange); - assertThat(state4.getStateName()).isEqualTo("NOT_SENT"); - } - - - /** - * Test the computeState method. - * oldState newState expectedFinalState - * IN_ERROR SENT_AND_DEPLOYED IN_ERROR - * IN_ERROR SENT IN_ERROR - * IN_ERROR IN_ERROR IN_ERROR - * IN_ERROR NOT_SENT IN_ERROR - */ - @Test - public void computeStateTestOriginalStateInError() throws IOException { - Exchange exchange = Mockito.mock(Exchange.class); - Message message = Mockito.mock(Message.class); - Exchange exchange2 = Mockito.mock(Exchange.class); - Mockito.when(exchange.getIn()).thenReturn(message); - Mockito.when(message.getExchange()).thenReturn(exchange2); - PolicyComponent policy = new PolicyComponent(); - ExternalComponentState inError = new ExternalComponentState("IN_ERROR", - "There was an error during the sending to policy, the policy engine may be corrupted or inconsistent", - 100); - policy.setState(inError); - // new policy state SENT_AND_DEPLOYED - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state = policy.computeState(exchange); - assertThat(state.getStateName()).isEqualTo("IN_ERROR"); - // new policy state SENT - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state2 = policy.computeState(exchange); - assertThat(state2.getStateName()).isEqualTo("IN_ERROR"); - // new policy state IN_ERROR - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true); - ExternalComponentState state3 = policy.computeState(exchange); - assertThat(state3.getStateName()).isEqualTo("IN_ERROR"); - // new policy state NOT_SENT - Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false); - Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false); - ExternalComponentState state4 = policy.computeState(exchange); - - assertThat(state4.getStateName()).isEqualTo("IN_ERROR"); - } - - /** - * Test the create policies payload PdpGroup test. - */ - @Test - public void createPoliciesPayloadPdpGroupTest() throws IOException { - Loop loopTest = new Loop("ControlLoopTest"); - PolicyModel policyModel1 = new PolicyModel("onap.policies.monitoring.test", null, "1.0.0"); - - MicroServicePolicy microServicePolicy = new MicroServicePolicy("configPolicyTest", policyModel1, true, - new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), null, "pdpGroup1", "pdpSubgroup1"); - loopTest.addMicroServicePolicy(microServicePolicy); - - MicroServicePolicy microServicePolicy2 = new MicroServicePolicy("configPolicyTest2", policyModel1, true, - new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), null, "pdpGroup2", "pdpSubgroup1"); - loopTest.addMicroServicePolicy(microServicePolicy2); - - PolicyModel policyModel2 = new PolicyModel("onap.policies.monitoring.test2", null, - "1.0.0"); - OperationalPolicy opPolicy = - new OperationalPolicy("opPolicy", new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), - new Gson().fromJson("{\"jsonschema\":\"schema\"}", JsonObject.class), policyModel2, null, - "pdpGroup2", - "pdpSubgroup2"); - - loopTest.addOperationalPolicy(opPolicy); - OperationalPolicy opLegacyPolicy = - new OperationalPolicy("opLegacyPolicy", new Gson().fromJson( - "{\"guard_policies\":[{\"policy-id\":\"guard1\"}]}", JsonObject.class), - new Gson().fromJson("{\"jsonschema\":\"schema\"}", JsonObject.class), policyModel2, null, - "pdpGroup2", - "pdpSubgroup2"); - - loopTest.addOperationalPolicy(opLegacyPolicy); - - LoopTemplate loopTemplate = new LoopTemplate("test", "yaml", 1, null); - loopTemplate.setDcaeBlueprintId("UUID-blueprint"); - loopTest.setLoopTemplate(loopTemplate); - - JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("example/policy/pdp-group-policy-payload.json"), - PolicyComponent.createPoliciesPayloadPdpGroup(loopTest, "POST"), false); - } -} |