97330a715a8ef029f60b059df287834c5ea0a67a
[holmes/engine-management.git] / engine-d / src / test / java / org / onap / holmes / engine / utils / AlarmUtilTest.java
1 /**\r
2  * Copyright 2017 ZTE Corporation.\r
3  *\r
4  * Licensed under the Apache License, Version 2.0 (the "License");\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  * http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an "AS IS" BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License.\r
15  */\r
16 \r
17 package org.onap.holmes.engine.utils;\r
18 \r
19 import org.hamcrest.core.IsEqual;\r
20 import org.hamcrest.core.IsNull;\r
21 import org.junit.Assert;\r
22 import org.junit.Before;\r
23 import org.junit.Test;\r
24 import org.onap.holmes.common.api.stat.Alarm;\r
25 import org.onap.holmes.common.producer.MQProducer;\r
26 import org.powermock.api.easymock.PowerMock;\r
27 import org.powermock.reflect.Whitebox;\r
28 \r
29 import java.util.HashMap;\r
30 import java.util.Map;\r
31 \r
32 public class AlarmUtilTest {\r
33     private AlarmUtil alarmUtil;\r
34     private final Map<String, Map<String, Integer>> rootPriorityMap = new HashMap<String, Map<String, Integer>>();\r
35     private final Map<String, String> saveRuleMsg = new HashMap<String, String>();\r
36 \r
37     @Before\r
38     public void setUp() {\r
39         alarmUtil = AlarmUtil.getInstance();\r
40         Whitebox.setInternalState(alarmUtil,"rootPriorityMap",rootPriorityMap);\r
41         Whitebox.setInternalState(alarmUtil,"saveRuleMsg",saveRuleMsg);\r
42         PowerMock.resetAll();\r
43     }\r
44 \r
45     @Test\r
46     public void getInstance() {\r
47         AlarmUtil instance = AlarmUtil.getInstance();\r
48         Assert.assertThat(instance,IsNull.<AlarmUtil>notNullValue());\r
49     }\r
50 \r
51     @Test\r
52     public void equipTypeFilter_is_nullstr() {\r
53         String probableCauseStr = "null";\r
54         String equipType = "equipType";\r
55         Alarm alarm = new Alarm();\r
56         boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
57         Assert.assertThat(filter, IsEqual.equalTo(true));\r
58     }\r
59 \r
60     @Test\r
61     public void equipTypeFilter_equals_alarm() {\r
62         String probableCauseStr = "11,4567";\r
63         String equipType = "ee,equipType";\r
64         Alarm alarm = new Alarm();\r
65         alarm.setProbableCause(4567);\r
66         alarm.setEquipType("equipType");\r
67         boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
68         Assert.assertThat(filter, IsEqual.equalTo(true));\r
69     }\r
70 \r
71     @Test\r
72     public void equipTypeFilter_not_equals_alarm() {\r
73         String probableCauseStr = "11,45";\r
74         String equipType = "ee,equipType";\r
75         Alarm alarm = new Alarm();\r
76         alarm.setProbableCause(4567);\r
77         alarm.setEquipType("equipType");\r
78         boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
79         Assert.assertThat(filter, IsEqual.equalTo(false));\r
80     }\r
81 \r
82     @Test\r
83     public void getPriority_rootprioritymap_containskey_ruleid() {\r
84         String ruleId = "1";\r
85         String probableCauseStr = "11,4567";\r
86         String rootAlarmFeatureStr = "0,1";\r
87         String equipTypeStr = "ee,equipType";\r
88         Alarm alarm = new Alarm();\r
89 \r
90         Map<String, Integer> map = new HashMap<String, Integer>();\r
91         map.put("11-ee", 0);\r
92         map.put("4567-equipType", 1);\r
93         rootPriorityMap.put(ruleId, map);\r
94 \r
95         saveRuleMsg.put(ruleId, "11ee0");\r
96 \r
97         Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
98         Assert.assertThat(priority,IsEqual.equalTo(0));\r
99     }\r
100 \r
101     @Test\r
102     public void getPriority_rootprioritymap_not_containskey_ruleid() {\r
103         String ruleId = "1";\r
104         String probableCauseStr = "11,4567";\r
105         String rootAlarmFeatureStr = "0,1";\r
106         String equipTypeStr = "ee,equipType";\r
107         Alarm alarm = new Alarm();\r
108 \r
109         saveRuleMsg.put(ruleId, "11ee0");\r
110 \r
111         Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
112         Assert.assertThat(priority,IsEqual.equalTo(0));\r
113     }\r
114 \r
115     @Test\r
116     public void getPriority_priority_is_not_null() {\r
117         String ruleId = "1";\r
118         String probableCauseStr = "11,4567";\r
119         String rootAlarmFeatureStr = "1,1";\r
120         String equipTypeStr = "ee,equipType";\r
121         Alarm alarm = new Alarm();\r
122         alarm.setProbableCause(11);\r
123         alarm.setEquipType("ee");\r
124 \r
125         saveRuleMsg.put(ruleId, "11ee0");\r
126 \r
127         Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
128         Assert.assertThat(priority,IsEqual.equalTo(1));\r
129     }\r
130 \r
131     @Test\r
132     public void getMqProducer() {\r
133         MQProducer mqProducer = alarmUtil.getMqProducer();\r
134         Assert.assertThat(mqProducer, IsNull.<MQProducer>notNullValue());\r
135     }\r
136 }\r