summaryrefslogtreecommitdiffstats
path: root/integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java')
-rw-r--r--integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java315
1 files changed, 0 insertions, 315 deletions
diff --git a/integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java b/integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java
deleted file mode 100644
index a3c0fcd7..00000000
--- a/integrity-monitor/src/test/java/org/onap/policy/common/im/test/StateManagementTest.java
+++ /dev/null
@@ -1,315 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Integrity Monitor
- * ================================================================================
- * Copyright (C) 2017 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.common.im.test;
-
-import java.util.Properties;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.Persistence;
-import org.junit.After;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.policy.common.im.StateManagement;
-import org.onap.policy.common.im.StandbyStatusException;
-import org.onap.policy.common.im.StateChangeNotifier;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/*
- * All JUnits are designed to run in the local development environment
- * where they have write privileges and can execute time-sensitive
- * tasks.
- */
-public class StateManagementTest {
- private static Logger logger = LoggerFactory.getLogger(StateManagementTest.class);
-
- private static final String DEFAULT_DB_DRIVER = "org.h2.Driver";
- private static final String DEFAULT_DB_URL = "jdbc:h2:file:./sql/smTest";
- private static final String DEFAULT_DB_USER = "sa";
- private static final String DEFAULT_DB_PWD = "";
-
- private static final String DB_DRIVER = "javax.persistence.jdbc.driver";
- private static final String DB_URL = "javax.persistence.jdbc.url";
- private static final String DB_USER = "javax.persistence.jdbc.user";
- private static final String DB_PWD = "javax.persistence.jdbc.password";
- //
-
- @BeforeClass
- public static void setUpClass() throws Exception {
-
- }
-
- @AfterClass
- public static void tearDownClass() throws Exception {
- }
-
- @Before
- public void setUp() throws Exception {
- }
-
- @After
- public void tearDown() throws Exception {
- }
-
- //@Ignore
- @Test
- public void testJPA() throws Exception {
- logger.info("\n\nlogger.infor StateManagementTest: Entering\n\n");
- String resourceName = "test_resource1";
- boolean standbyExceptionThrown = false;
-
- //These parameters are in a properties file
- EntityManagerFactory emf = null;
- try {
- Properties myProp = new Properties();
- myProp.put(DB_DRIVER, DEFAULT_DB_DRIVER);
- myProp.put(DB_URL, DEFAULT_DB_URL);
- myProp.put(DB_USER, DEFAULT_DB_USER);
- myProp.put(DB_PWD, DEFAULT_DB_PWD);
-
- //Create the data schema and entity manager factory
- emf = Persistence.createEntityManagerFactory("schemaPU", myProp);
-
- StateManagement sm = new StateManagement(emf, resourceName);
- logger.info("\n\ntest lock()");
- displayState(resourceName, sm);
- logger.info("\n??? test lock()");
- logger.info("{} before adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} before opState = {}", resourceName, sm.getOpState());
- logger.info("{} before availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} before standbyStatus= {}", resourceName, sm.getStandbyStatus());
- sm.lock();
- System.out.println("\n\nafter lock()");
- displayState(resourceName, sm);
- logger.info("{} after adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} after opState = {}", resourceName, sm.getOpState());
- logger.info("{} after availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} after standbyStatus= {}", resourceName, sm.getStandbyStatus());
-
- logger.info("\n??? test unlock()");
- sm.unlock();
- System.out.println("\n\nafter unlock()");
- displayState(resourceName, sm);
- logger.info("{} adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} opState = {}", resourceName, sm.getOpState());
- logger.info("{} availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} standbyStatus= {}", resourceName, sm.getStandbyStatus());
-
- logger.info("\n??? test enableNotFailed()");
- sm.enableNotFailed();
- System.out.println("\n\nafter enableNotFailed()");
- displayState(resourceName, sm);
- logger.info("{} adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} opState = {}", resourceName, sm.getOpState());
- logger.info("{} availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} standbyStatus= {}", resourceName, sm.getStandbyStatus());
-
- logger.info("\n??? test disableFailed()");
- sm.disableFailed();
- System.out.println("\n\nafter disableFailed()");
- displayState(resourceName, sm);
- logger.info("{} adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} opState = {}", resourceName, sm.getOpState());
- logger.info("{} availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} standbyStatus= {}", resourceName, sm.getStandbyStatus());
-
- // P4 If promote() is called while either the opState is disabled or the adminState is locked,
- // the standbystatus shall transition to coldstandby and a StandbyStatusException shall be thrown
- logger.info("\n??? promote() test case P4");
- try {
- sm.disableFailed();
- sm.lock();
- System.out.println("\n\nafter lock() and disableFailed");
- displayState(resourceName, sm);
- logger.info("{} adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} opState = {}", resourceName, sm.getOpState());
- logger.info("{} standbyStatus= {}", resourceName, sm.getStandbyStatus());
- sm.promote();
- System.out.println("\n\nafter promote");
- displayState(resourceName, sm);
- } catch(StandbyStatusException ex) {
- standbyExceptionThrown = true;
- logger.info("StandbyStatusException thrown and catched");
- } catch(Exception ex) {
- logger.info("??? Exception: " + ex.toString());
- }
- assert(standbyExceptionThrown);
- assert(sm.getStandbyStatus().equals(StateManagement.COLD_STANDBY));
- standbyExceptionThrown = false;
-
- // P3 If promote() is called while standbyStatus is coldstandby, the state shall not transition
- // and a StandbyStatusException shall be thrown
- logger.info("\n??? promote() test case P3");
- try {
- logger.info(resourceName + " standbyStatus= " + sm.getStandbyStatus());
- sm.promote();
- } catch(StandbyStatusException ex) {
- standbyExceptionThrown = true;
- logger.info("StandbyStatusException thrown and catched");
- } catch(Exception ex) {
- logger.info("??? Exception: " + ex.toString());
- }
- assert(standbyExceptionThrown);
- assert(sm.getStandbyStatus().equals(StateManagement.COLD_STANDBY));
- logger.info("\n\nP3 after promote()");
- displayState(resourceName, sm);
- standbyExceptionThrown = false;
-
- // P2 If promote() is called while the standbyStatus is null and the opState is enabled and adminState is unlocked,
- // the state shall transition to providingservice
- logger.info("\n??? promote() test case P2");
- resourceName = "test_resource2";
- StateManagement sm2 = new StateManagement(emf, resourceName);
- sm2.enableNotFailed();
- sm2.unlock();
- logger.info("\n\nafter sm2.enableNotFailed() and sm2.unlock()");
- displayState(resourceName, sm2);
- logger.info("{} adminState = {}", resourceName, sm2.getAdminState());
- logger.info("{} opState = {}", resourceName, sm2.getOpState());
- logger.info("{} standbyStatus= {}", resourceName, sm2.getStandbyStatus());
- sm2.promote();
- logger.info("\n\nP2 after sm2.promote");
- displayState(resourceName, sm2);
- assert(sm2.getAdminState().equals(StateManagement.UNLOCKED));
- assert(sm2.getOpState().equals(StateManagement.ENABLED));
- assert(sm2.getStandbyStatus().equals(StateManagement.PROVIDING_SERVICE));
-
- // P5 If promote() is called while standbyStatus is providingservice, no action is taken
- logger.info("\n??? promote() test case P5");
- logger.info(resourceName + " standbyStatus= " + sm2.getStandbyStatus());
- sm2.promote();
- logger.info("\n\nP5 after sm2.promote()");
- displayState(resourceName, sm2);
- assert(sm2.getStandbyStatus().equals(StateManagement.PROVIDING_SERVICE));
-
- // D1 If demote() is called while standbyStatus is providingservice, the state shall transition to hotstandby
- logger.info("\n??? demote() test case D1");
- logger.info(resourceName + " standbyStatus= " + sm2.getStandbyStatus());
- sm2.demote();
- logger.info("\n\nD1 after sm2.demote()");
- displayState(resourceName, sm2);
- assert(sm2.getStandbyStatus().equals(StateManagement.HOT_STANDBY));
-
- // D4 If demote() is called while standbyStatus is hotstandby, no action is taken
- logger.info("\n??? demote() test case D4");
- logger.info(resourceName + " standbyStatus= " + sm2.getStandbyStatus());
- sm2.demote();
- logger.info("\n\nD4 after sm2.demote()");
- displayState(resourceName, sm2);
- assert(sm2.getStandbyStatus().equals(StateManagement.HOT_STANDBY));
-
- // D3 If demote() is called while standbyStatus is null and adminState is locked or opState is disabled,
- // the state shall transition to coldstandby
- logger.info("\n??? demote() test case D3");
- resourceName = "test_resource3";
- StateManagement sm3 = new StateManagement(emf, resourceName);
- sm3.lock();
- sm3.disableFailed();
- logger.info("\n\nD3 after sm3.lock() and sm3.disableFailed()");
- displayState(resourceName, sm3);
- logger.info("{} adminState = {}", resourceName, sm3.getAdminState());
- logger.info("{} opState = {}", resourceName, sm3.getOpState());
- logger.info("{} standbyStatus= {}", resourceName, sm3.getStandbyStatus());
- sm3.demote();
- logger.info("\n\nD3 after sm3.demote()");
- displayState(resourceName, sm3);
- assert(sm3.getStandbyStatus().equals(StateManagement.COLD_STANDBY));
-
- // D5 If demote() is called while standbyStatus is coldstandby, no action is taken
- logger.info("\n??? demote() test case D5");
- logger.info(resourceName + " standbyStatus= " + sm3.getStandbyStatus());
- sm3.demote();
- logger.info("\n\nD5 after sm3.demote()");
- displayState(resourceName, sm3);
- assert(sm3.getStandbyStatus().equals(StateManagement.COLD_STANDBY));
-
- // D2 If demote() is called while standbyStatus is null and adminState is unlocked and opState is enabled,
- // the state shall transition to hotstandby
- logger.info("\n??? demote() test case D2");
- resourceName = "test_resource4";
- StateManagement sm4 = new StateManagement(emf, resourceName);
- sm4.unlock();
- sm4.enableNotFailed();
- logger.info("\n\nD2 after sm4.unlock() and sm4.enableNotFailed()");
- displayState(resourceName, sm4);
- logger.info("{} adminState = {}", resourceName, sm4.getAdminState());
- logger.info("{} opState = {}", resourceName, sm4.getOpState());
- logger.info("{} standbyStatus= {}", resourceName, sm4.getStandbyStatus());
- sm4.demote();
- assert(sm4.getStandbyStatus().equals(StateManagement.HOT_STANDBY));
-
- // P1 If promote() is called while standbyStatus is hotstandby, the state shall transition to providingservice.
- logger.info("\n??? promote() test case P1");
- logger.info(resourceName + " standbyStatus= " + sm4.getStandbyStatus());
- sm4.promote();
- logger.info("\n\nP1 after sm4.promote()");
- displayState(resourceName, sm4);
- assert(sm4.getStandbyStatus().equals(StateManagement.PROVIDING_SERVICE));
-
- // State change notification
- logger.info("\n??? State change notification test case 1 - lock()");
- StateChangeNotifier stateChangeNotifier = new StateChangeNotifier();
- sm.addObserver(stateChangeNotifier);
- sm.lock();
-
- logger.info("\n??? State change notification test case 2 - unlock()");
- sm.unlock();
-
- logger.info("\n??? State change notification test case 3 - enabled()");
- sm.enableNotFailed();
-
- logger.info("\n??? State change notification test case 4 - disableFailed()");
- sm.disableFailed();
-
- logger.info("\n??? State change notification test case 5 - demote()");
- sm.demote();
-
- logger.info("\n??? State change notification test case 6 - promote()");
- try {
- sm.promote();
- } catch(Exception ex) {
- logger.info("Exception from promote(): {}", ex.toString());
- }
-
- if (emf.isOpen()) {
- emf.close();
- }
- } catch(Exception ex) {
- logger.error("Exception: {}", ex.toString());
- } finally {
- if (emf.isOpen()) {
- emf.close();
- }
- }
-
- logger.info("\n\nStateManagementTest: Exit\n\n");
- }
-
- private void displayState(String resourceName, StateManagement sm)
- {
- logger.info("{} adminState = {}", resourceName, sm.getAdminState());
- logger.info("{} opState = {}", resourceName, sm.getOpState());
- logger.info("{} availStatus = {}", resourceName, sm.getAvailStatus());
- logger.info("{} standbyStatus= {}", resourceName, sm.getStandbyStatus());
- }
-}
-