db131bf0d3b6d1115e37336eb4a99bbecadf8b66
[policy/apex-pdp.git] / testsuites / integration / integration-context-test / src / test / java / org / onap / policy / apex / testsuites / integration / context / distribution / InfinispanContextDistributorTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2018 Ericsson. All rights reserved.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * SPDX-License-Identifier: Apache-2.0
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.policy.apex.testsuites.integration.context.distribution;
22
23 import java.io.IOException;
24
25 import org.junit.After;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters;
29 import org.onap.policy.apex.context.parameters.ContextParameterConstants;
30 import org.onap.policy.apex.context.parameters.ContextParameters;
31 import org.onap.policy.apex.context.parameters.SchemaParameters;
32 import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
33 import org.onap.policy.apex.model.basicmodel.handling.ApexModelException;
34 import org.onap.policy.apex.plugins.context.distribution.infinispan.InfinispanContextDistributor;
35 import org.onap.policy.apex.plugins.context.distribution.infinispan.InfinispanDistributorParameters;
36 import org.onap.policy.common.parameters.ParameterService;
37 import org.slf4j.ext.XLogger;
38 import org.slf4j.ext.XLoggerFactory;
39
40 /**
41  * The Class InfinispanContextDistributorTest.
42  */
43 public class InfinispanContextDistributorTest {
44     private static final XLogger logger = XLoggerFactory.getXLogger(InfinispanContextDistributorTest.class);
45
46     private static final String PLUGIN_CLASS = InfinispanContextDistributor.class.getName();
47
48     private SchemaParameters schemaParameters;
49     private ContextParameters contextParameters;
50
51     /**
52      * Before test.
53      */
54     @Before
55     public void beforeTest() {
56         contextParameters = new ContextParameters();
57
58         contextParameters.setName(ContextParameterConstants.MAIN_GROUP_NAME);
59         InfinispanDistributorParameters inifinispanDistributorParameters = new InfinispanDistributorParameters();
60         inifinispanDistributorParameters.setName(ContextParameterConstants.DISTRIBUTOR_GROUP_NAME);
61         inifinispanDistributorParameters.setPluginClass(PLUGIN_CLASS);
62         contextParameters.setDistributorParameters(inifinispanDistributorParameters);
63         contextParameters.getLockManagerParameters().setName(ContextParameterConstants.LOCKING_GROUP_NAME);
64         contextParameters.getPersistorParameters().setName(ContextParameterConstants.PERSISTENCE_GROUP_NAME);
65
66         ParameterService.register(contextParameters);
67         ParameterService.register(contextParameters.getDistributorParameters());
68         ParameterService.register(contextParameters.getLockManagerParameters());
69         ParameterService.register(contextParameters.getPersistorParameters());
70
71         schemaParameters = new SchemaParameters();
72         schemaParameters.setName(ContextParameterConstants.SCHEMA_GROUP_NAME);
73         schemaParameters.getSchemaHelperParameterMap().put("JAVA", new JavaSchemaHelperParameters());
74
75         ParameterService.register(schemaParameters);
76     }
77
78     /**
79      * After test.
80      */
81     @After
82     public void afterTest() {
83         ParameterService.deregister(schemaParameters);
84
85         ParameterService.deregister(contextParameters.getDistributorParameters());
86         ParameterService.deregister(contextParameters.getLockManagerParameters());
87         ParameterService.deregister(contextParameters.getPersistorParameters());
88         ParameterService.deregister(contextParameters);
89     }
90
91     /**
92      * Test context album update infinispan.
93      *
94      * @throws ApexModelException the apex model exception
95      * @throws IOException Signals that an I/O exception has occurred.
96      * @throws ApexException the apex exception
97      */
98     @Test
99     public void testContextAlbumUpdateInfinispan() throws ApexModelException, IOException, ApexException {
100         logger.debug("Running testContextAlbumUpdateInfinispan test . . .");
101
102         new ContextAlbumUpdate().testContextAlbumUpdate();
103
104         logger.debug("Ran testContextAlbumUpdateInfinispan test");
105     }
106
107     /**
108      * Test context instantiation infinispan.
109      *
110      * @throws ApexModelException the apex model exception
111      * @throws IOException Signals that an I/O exception has occurred.
112      * @throws ApexException the apex exception
113      */
114     @Test
115     public void testContextInstantiationInfinispan() throws ApexModelException, IOException, ApexException {
116         logger.debug("Running testContextInstantiationInfinispan test . . .");
117
118         new ContextInstantiation().testContextInstantiation();
119
120         logger.debug("Ran testContextInstantiationInfinispan test");
121     }
122
123     /**
124      * Test context update infinispan.
125      *
126      * @throws ApexModelException the apex model exception
127      * @throws IOException Signals that an I/O exception has occurred.
128      * @throws ApexException the apex exception
129      */
130     @Test
131     public void testContextUpdateInfinispan() throws ApexModelException, IOException, ApexException {
132         logger.debug("Running testContextUpdateInfinispan test . . .");
133
134         new ContextUpdate().testContextUpdate();
135
136         logger.debug("Ran testContextUpdateInfinispan test");
137     }
138
139     /**
140      * Test sequential context instantiation infinispan.
141      *
142      * @throws ApexModelException the apex model exception
143      * @throws IOException Signals that an I/O exception has occurred.
144      * @throws ApexException the apex exception
145      */
146     @Test
147     public void testSequentialContextInstantiationInfinispan() throws ApexModelException, IOException, ApexException {
148         logger.debug("Running testSequentialContextInstantiationInfinispan test . . .");
149
150         new SequentialContextInstantiation().testSequentialContextInstantiation();
151
152         logger.debug("Ran testSequentialContextInstantiationInfinispan test");
153     }
154 }