--- /dev/null
+/**\r
+ * Copyright 2017 ZTE Corporation.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+\r
+package org.onap.holmes.engine.utils;\r
+\r
+import org.hamcrest.core.IsEqual;\r
+import org.hamcrest.core.IsNull;\r
+import org.junit.Assert;\r
+import org.junit.Before;\r
+import org.junit.Test;\r
+import org.onap.holmes.common.api.stat.Alarm;\r
+import org.onap.holmes.common.producer.MQProducer;\r
+import org.powermock.api.easymock.PowerMock;\r
+import org.powermock.reflect.Whitebox;\r
+\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+public class AlarmUtilTest {\r
+ private AlarmUtil alarmUtil;\r
+ private final Map<String, Map<String, Integer>> rootPriorityMap = new HashMap<String, Map<String, Integer>>();\r
+ private final Map<String, String> saveRuleMsg = new HashMap<String, String>();\r
+\r
+ @Before\r
+ public void setUp() {\r
+ alarmUtil = AlarmUtil.getInstance();\r
+ Whitebox.setInternalState(alarmUtil,"rootPriorityMap",rootPriorityMap);\r
+ Whitebox.setInternalState(alarmUtil,"saveRuleMsg",saveRuleMsg);\r
+ PowerMock.resetAll();\r
+ }\r
+\r
+ @Test\r
+ public void getInstance() {\r
+ AlarmUtil instance = AlarmUtil.getInstance();\r
+ Assert.assertThat(instance,IsNull.<AlarmUtil>notNullValue());\r
+ }\r
+\r
+ @Test\r
+ public void equipTypeFilter_is_nullstr() {\r
+ String probableCauseStr = "null";\r
+ String equipType = "equipType";\r
+ Alarm alarm = new Alarm();\r
+ boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
+ Assert.assertThat(filter, IsEqual.equalTo(true));\r
+ }\r
+\r
+ @Test\r
+ public void equipTypeFilter_equals_alarm() {\r
+ String probableCauseStr = "11,4567";\r
+ String equipType = "ee,equipType";\r
+ Alarm alarm = new Alarm();\r
+ alarm.setProbableCause(4567);\r
+ alarm.setEquipType("equipType");\r
+ boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
+ Assert.assertThat(filter, IsEqual.equalTo(true));\r
+ }\r
+\r
+ @Test\r
+ public void equipTypeFilter_not_equals_alarm() {\r
+ String probableCauseStr = "11,45";\r
+ String equipType = "ee,equipType";\r
+ Alarm alarm = new Alarm();\r
+ alarm.setProbableCause(4567);\r
+ alarm.setEquipType("equipType");\r
+ boolean filter = alarmUtil.equipTypeFilter(probableCauseStr, equipType, alarm);\r
+ Assert.assertThat(filter, IsEqual.equalTo(false));\r
+ }\r
+\r
+ @Test\r
+ public void getPriority_rootprioritymap_containskey_ruleid() {\r
+ String ruleId = "1";\r
+ String probableCauseStr = "11,4567";\r
+ String rootAlarmFeatureStr = "0,1";\r
+ String equipTypeStr = "ee,equipType";\r
+ Alarm alarm = new Alarm();\r
+\r
+ Map<String, Integer> map = new HashMap<String, Integer>();\r
+ map.put("11-ee", 0);\r
+ map.put("4567-equipType", 1);\r
+ rootPriorityMap.put(ruleId, map);\r
+\r
+ saveRuleMsg.put(ruleId, "11ee0");\r
+\r
+ Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
+ Assert.assertThat(priority,IsEqual.equalTo(0));\r
+ }\r
+\r
+ @Test\r
+ public void getPriority_rootprioritymap_not_containskey_ruleid() {\r
+ String ruleId = "1";\r
+ String probableCauseStr = "11,4567";\r
+ String rootAlarmFeatureStr = "0,1";\r
+ String equipTypeStr = "ee,equipType";\r
+ Alarm alarm = new Alarm();\r
+\r
+ saveRuleMsg.put(ruleId, "11ee0");\r
+\r
+ Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
+ Assert.assertThat(priority,IsEqual.equalTo(0));\r
+ }\r
+\r
+ @Test\r
+ public void getPriority_priority_is_not_null() {\r
+ String ruleId = "1";\r
+ String probableCauseStr = "11,4567";\r
+ String rootAlarmFeatureStr = "1,1";\r
+ String equipTypeStr = "ee,equipType";\r
+ Alarm alarm = new Alarm();\r
+ alarm.setProbableCause(11);\r
+ alarm.setEquipType("ee");\r
+\r
+ saveRuleMsg.put(ruleId, "11ee0");\r
+\r
+ Integer priority = alarmUtil.getPriority(ruleId, probableCauseStr, rootAlarmFeatureStr, equipTypeStr, alarm);\r
+ Assert.assertThat(priority,IsEqual.equalTo(1));\r
+ }\r
+\r
+ @Test\r
+ public void getMqProducer() {\r
+ MQProducer mqProducer = alarmUtil.getMqProducer();\r
+ Assert.assertThat(mqProducer, IsNull.<MQProducer>notNullValue());\r
+ }\r
+}\r