Fix policy status issue 97/96797/2
authorxuegao <xg353y@intl.att.com>
Wed, 9 Oct 2019 14:12:37 +0000 (16:12 +0200)
committersebdet <sebastien.determe@intl.att.com>
Wed, 9 Oct 2019 15:39:12 +0000 (17:39 +0200)
Change the initial status of policy from SENT_AND_DEPLOYED to NOT_SENT.

Issue-ID: CLAMP-533
Change-Id: If4fa22fc2e3fb33500502bab41e49de9000dd7e7
Signed-off-by: xuegao <xg353y@intl.att.com>
src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java
src/test/java/org/onap/clamp/loop/PolicyComponentTest.java [deleted file]
ui-react/src/LoopUI.js

index 13ccea5..9321423 100644 (file)
@@ -62,7 +62,7 @@ public class PolicyComponent extends ExternalComponent {
          * on by one, each time we increase the level we can't decrease it anymore.
          * That's why it starts with the lowest one SENT_AND_DEPLOYED.
          */
-        super(NOT_SENT);
+        super(SENT_AND_DEPLOYED);
     }
 
     @Override
diff --git a/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java b/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java
deleted file mode 100644 (file)
index 4be8d23..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 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.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-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.clamp.loop.components.external.ExternalComponentState;
-import org.onap.clamp.loop.components.external.PolicyComponent;
-
-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 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 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 SENT_AND_DEPLOYED = new ExternalComponentState("SENT_AND_DEPLOYED",
-                "The policies defined have been created and deployed on the policy engine", 10);
-        policy.setState(SENT_AND_DEPLOYED);
-
-        // 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(SENT_AND_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");
-    }
-
-    /**
-     * 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 IN_ERROR = new ExternalComponentState("IN_ERROR",
-                "There was an error during the sending to policy, the policy engine may be corrupted or inconsistent",
-                100);
-        policy.setState(IN_ERROR);
-
-        // 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");
-    }
-}
index ad970d8..ff3c444 100644 (file)
@@ -33,6 +33,7 @@ import LoopLogs from './components/loop_viewer/logs/LoopLogs';
 import LoopStatus from './components/loop_viewer/status/LoopStatus';
 import UserService from './api/UserService';
 import LoopCache from './api/LoopCache';
+import LoopActionService from './api/LoopActionService';
 
 import { Route } from 'react-router-dom'
 import OpenLoopModal from './components/dialogs/OpenLoop/OpenLoopModal';
@@ -227,7 +228,14 @@ export default class LoopUI extends React.Component {
        loadLoop(loopName) {
                LoopService.getLoop(loopName).then(loop => {
                        console.debug("Updating loopCache");
-                       this.updateLoopCache(loop);
+                       LoopActionService.refreshStatus(loopName).then(data => {
+                               this.updateLoopCache(data);
+                               this.props.history.push('/');
+                       })
+                       .catch(error => {
+                               this.updateLoopCache(loop);
+                               this.props.history.push('/');
+                       });
                });
        }