d4ab6bd7bfd072819e186b5398d42759ad62ab30
[policy/apex-pdp.git] / model / policy-model / src / test / java / org / onap / policy / apex / model / policymodel / handling / PolicyAnalyserTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2016-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.model.policymodel.handling;
22
23 import static org.junit.Assert.assertNotNull;
24 import static org.junit.Assert.assertTrue;
25
26 import org.junit.Test;
27 import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
28 import org.onap.policy.apex.model.policymodel.handling.PolicyAnalyser;
29 import org.onap.policy.apex.model.policymodel.handling.PolicyAnalysisResult;
30
31 public class PolicyAnalyserTest {
32     @Test
33     public void test() {
34         final AxPolicyModel apexModel = new SupportApexPolicyModelCreator().getModel();
35
36         final PolicyAnalyser policyAnalyser = new PolicyAnalyser();
37         final PolicyAnalysisResult analysisResult = policyAnalyser.analyse(apexModel);
38
39         assertTrue(analysisResult.toString().equals(EXPECTED_ANALYSIS_RESULT));
40
41         assertNotNull(analysisResult.getUsedContextAlbums());
42         assertNotNull(analysisResult.getUsedContextSchemas());
43         assertNotNull(analysisResult.getUsedEvents());
44         assertNotNull(analysisResult.getUsedTasks());
45         assertNotNull(analysisResult.getUnusedContextAlbums());
46         assertNotNull(analysisResult.getUnusedContextSchemas());
47         assertNotNull(analysisResult.getUnusedEvents());
48         assertNotNull(analysisResult.getUnusedTasks());
49     }
50
51     private static final String EXPECTED_ANALYSIS_RESULT = "" + "Context Schema usage\n" + " MapType:0.0.1\n"
52             + "  contextAlbum0:0.0.1\n" + " StringType:0.0.1\n" + "  contextAlbum1:0.0.1\n"
53             + " eventContextItem0:0.0.1\n" + "  inEvent:0.0.1\n" + "  outEvent0:0.0.1\n" + "  outEvent1:0.0.1\n"
54             + "  task:0.0.1\n" + " eventContextItem1:0.0.1\n" + "  inEvent:0.0.1\n" + "  outEvent0:0.0.1\n"
55             + "  outEvent1:0.0.1\n" + "  task:0.0.1\n" + "Context Album usage\n" + " contextAlbum0:0.0.1\n"
56             + "  task:0.0.1\n" + "  policy:0.0.1:NULL:state\n" + " contextAlbum1:0.0.1\n" + "  task:0.0.1\n"
57             + "  policy:0.0.1:NULL:state\n" + "Event usage\n" + " inEvent:0.0.1\n" + "  policy:0.0.1:NULL:state\n"
58             + " outEvent0:0.0.1\n" + "  policy:0.0.1:NULL:state\n" + " outEvent1:0.0.1 (unused)\n" + "Task usage\n"
59             + " task:0.0.1\n" + "  policy:0.0.1:NULL:state\n";
60 }