\r
package org.onap.holmes.engine.manager;\r
\r
-import static org.easymock.EasyMock.anyInt;\r
-import static org.easymock.EasyMock.expect;\r
-\r
-import java.lang.reflect.Method;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.Locale;\r
+import org.easymock.EasyMock;\r
import org.junit.Before;\r
import org.junit.Rule;\r
import org.junit.Test;\r
import org.kie.api.io.KieResources;\r
import org.kie.api.runtime.KieContainer;\r
import org.kie.api.runtime.KieSession;\r
-import org.onap.holmes.common.api.stat.VesAlarm;\r
-import org.onap.holmes.engine.request.DeployRuleRequest;\r
+import org.onap.holmes.common.api.entity.AlarmInfo;\r
import org.onap.holmes.common.api.entity.CorrelationRule;\r
+import org.onap.holmes.common.api.stat.VesAlarm;\r
import org.onap.holmes.common.constant.AlarmConst;\r
import org.onap.holmes.common.exception.CorrelationException;\r
+import org.onap.holmes.common.utils.DbDaoUtil;\r
+import org.onap.holmes.engine.db.AlarmInfoDao;\r
+import org.onap.holmes.engine.request.DeployRuleRequest;\r
import org.onap.holmes.engine.wrapper.RuleMgtWrapper;\r
import org.powermock.api.easymock.PowerMock;\r
import org.powermock.reflect.Whitebox;\r
\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+import java.util.Locale;\r
+\r
+import static org.hamcrest.CoreMatchers.is;\r
+import static org.hamcrest.core.IsEqual.equalTo;\r
+import static org.junit.Assert.assertThat;\r
+\r
public class DroolsEngineTest {\r
\r
@Rule\r
private KieResources resources;\r
private KieRepository kieRepository;\r
\r
+ private AlarmInfoDao alarmInfoDaoMock;\r
\r
private DroolsEngine droolsEngine;\r
\r
+ private DbDaoUtil dbDaoUtilMock;\r
+\r
@Before\r
public void setUp() throws Exception {\r
droolsEngine = new DroolsEngine();\r
kieBase = kieContainer.getKieBase();\r
kieSession = kieContainer.newKieSession();\r
\r
- ruleMgtWrapper = PowerMock.createMock(RuleMgtWrapper.class);\r
+ alarmInfoDaoMock = PowerMock.createMock(AlarmInfoDao.class);\r
+ dbDaoUtilMock = PowerMock.createMock(DbDaoUtil.class);\r
\r
- Whitebox.setInternalState(droolsEngine, "ruleMgtWrapper", ruleMgtWrapper);\r
\r
Whitebox.setInternalState(droolsEngine, "kieBase", kieBase);\r
Whitebox.setInternalState(droolsEngine, "kieSession", kieSession);\r
Whitebox.setInternalState(droolsEngine, "resources", resources);\r
Whitebox.setInternalState(droolsEngine, "kieRepository", kieRepository);\r
\r
+ Whitebox.setInternalState(droolsEngine, "daoUtil", dbDaoUtilMock);\r
+ Whitebox.setInternalState(droolsEngine, "alarmInfoDao", alarmInfoDaoMock);\r
+\r
PowerMock.resetAll();\r
}\r
\r
rule.setPackageName("org.onap.holmes");\r
rules.add(rule);\r
\r
- expect(ruleMgtWrapper.queryRuleByEnable(anyInt())).andReturn(rules);\r
+// expect(ruleMgtWrapper.queryRuleByEnable(anyInt())).andReturn(rules);\r
+ List<AlarmInfo> alarmInfoList = new ArrayList<AlarmInfo>();\r
+ EasyMock.expect(dbDaoUtilMock.getJdbiDaoByOnDemand(AlarmInfoDao.class)).andReturn(alarmInfoDaoMock).anyTimes();\r
+ EasyMock.expect(alarmInfoDaoMock.queryAllAlarm()).andReturn(alarmInfoList).anyTimes();\r
PowerMock.replayAll();\r
\r
- Method method = DroolsEngine.class.getDeclaredMethod("init");\r
- method.setAccessible(true);\r
- method.invoke(droolsEngine);\r
-\r
PowerMock.verifyAll();\r
}\r
\r
public void stop() throws Exception {\r
droolsEngine.stop();\r
}\r
+\r
+ @Test\r
+ public void testConvertAlarmInfo2VesAlarm() throws Exception {\r
+ AlarmInfo alarmInfo = new AlarmInfo();\r
+ alarmInfo.setEventId("eventId");\r
+ alarmInfo.setEventName("eventName");\r
+ alarmInfo.setStartEpochMicroSec(1L);\r
+ alarmInfo.setLastEpochMicroSec(1L);\r
+ alarmInfo.setSourceId("sourceId");\r
+ alarmInfo.setSourceName("sourceName");\r
+ alarmInfo.setRootFlag(0);\r
+ alarmInfo.setAlarmIsCleared(1);\r
+\r
+ PowerMock.replayAll();\r
+ VesAlarm vesAlarm = Whitebox.invokeMethod(droolsEngine,"convertAlarmInfo2VesAlarm",alarmInfo);\r
+ PowerMock.verifyAll();\r
+\r
+ assertThat(vesAlarm.getAlarmIsCleared(), is(1));\r
+ assertThat(vesAlarm.getSourceName(), equalTo("sourceName"));\r
+ assertThat(vesAlarm.getSourceId(), equalTo("sourceId"));\r
+ assertThat(vesAlarm.getStartEpochMicrosec(), is(1L));\r
+ assertThat(vesAlarm.getLastEpochMicrosec(), is(1L));\r
+ assertThat(vesAlarm.getEventName(), equalTo("eventName"));\r
+ assertThat(vesAlarm.getEventId(), equalTo("eventId"));\r
+ assertThat(vesAlarm.getRootFlag(), is(0));\r
+ }\r
}\r