Switched from Dropwizard to Springboot
[holmes/engine-management.git] / engine-d / src / test / java / org / onap / holmes / engine / manager / DroolsEngineTest.java
index cb28faa..31f1817 100644 (file)
@@ -1,5 +1,5 @@
 /**\r
- * Copyright 2017-2020 ZTE Corporation.\r
+ * Copyright 2017-2021 ZTE Corporation.\r
  * <p>\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
@@ -16,7 +16,6 @@
 \r
 package org.onap.holmes.engine.manager;\r
 \r
-import org.junit.Before;\r
 import org.junit.Rule;\r
 import org.junit.Test;\r
 import org.junit.rules.ExpectedException;\r
@@ -26,11 +25,10 @@ import org.onap.holmes.common.api.stat.VesAlarm;
 import org.onap.holmes.common.config.MicroServiceConfig;\r
 import org.onap.holmes.common.dmaap.store.ClosedLoopControlNameCache;\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.db.AlarmInfoDaoService;\r
+import org.onap.holmes.engine.db.CorrelationRuleDaoService;\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
@@ -47,33 +45,31 @@ public class DroolsEngineTest {
     @Rule\r
     public ExpectedException thrown = ExpectedException.none();\r
 \r
-    private RuleMgtWrapper ruleMgtWrapper;\r
+    private RuleMgtWrapper ruleMgtWrapperMock;\r
 \r
     private DroolsEngine droolsEngine;\r
 \r
-    private DbDaoUtil dbDaoUtilStub;\r
+    private AlarmInfoDaoService alarmInfoDaoServiceStub;\r
+\r
+    private CorrelationRuleDaoService correlationRuleDaoServiceStub;\r
 \r
     private ClosedLoopControlNameCache closedLoopControlNameCache;\r
 \r
     public DroolsEngineTest() throws Exception {\r
         System.setProperty(MicroServiceConfig.HOSTNAME, "127.0.0.1:80");\r
         droolsEngine = new DroolsEngine();\r
-        ruleMgtWrapper = new RuleMgtWrapperStub();\r
-        dbDaoUtilStub = new DbDaoUtilStub();\r
+        alarmInfoDaoServiceStub = new AlarmInfoDaoServiceStub();\r
+        droolsEngine.setAlarmInfoDaoService(alarmInfoDaoServiceStub);\r
+        correlationRuleDaoServiceStub = new CorrelationRuleDaoServiceStub();\r
+        ruleMgtWrapperMock = new RuleMgtWrapperStub(correlationRuleDaoServiceStub);\r
         closedLoopControlNameCache = new ClosedLoopControlNameCache();\r
         droolsEngine.setClosedLoopControlNameCache(closedLoopControlNameCache);\r
-        droolsEngine.setDaoUtil(dbDaoUtilStub);\r
-        droolsEngine.setRuleMgtWrapper(ruleMgtWrapper);\r
+        droolsEngine.setRuleMgtWrapper(ruleMgtWrapperMock);\r
 \r
-        Whitebox.invokeMethod(droolsEngine, "init");\r
+        Whitebox.invokeMethod(droolsEngine, "run", null);\r
         System.clearProperty(MicroServiceConfig.HOSTNAME);\r
     }\r
 \r
-    @Before\r
-    public void setUp() throws Exception {\r
-        PowerMock.resetAll();\r
-    }\r
-\r
     @Test\r
     public void deployRule_rule_is_null() throws CorrelationException {\r
         thrown.expect(NullPointerException.class);\r
@@ -241,78 +237,74 @@ public class DroolsEngineTest {
 \r
         assertThat(packages.contains("packageCheck"), is(true));\r
     }\r
-}\r
-\r
-class RuleMgtWrapperStub extends RuleMgtWrapper {\r
-    private List<CorrelationRule> rules;\r
-\r
-    public RuleMgtWrapperStub() {\r
-        rules = new ArrayList<>();\r
-        CorrelationRule rule = new CorrelationRule();\r
-        rule.setEnabled(1);\r
-        rule.setContent("package org.onap.holmes;");\r
-        rule.setPackageName("UT");\r
-        rule.setClosedControlLoopName(UUID.randomUUID().toString());\r
-        rule.setEngineInstance("127.0.0.1");\r
-        rules.add(rule);\r
-    }\r
-\r
-    public List<CorrelationRule> getRules() {\r
-        return rules;\r
-    }\r
-\r
-    public void setRules(List<CorrelationRule> rules) {\r
-        this.rules = rules;\r
-    }\r
 \r
-    @Override\r
-    public List<CorrelationRule> queryRuleByEnable(int enabled) throws CorrelationException {\r
-        return rules.stream().filter(rule -> rule.getEnabled() == enabled).collect(Collectors.toList());\r
+    class RuleMgtWrapperStub extends RuleMgtWrapper {\r
+        private List<CorrelationRule> rules;\r
+\r
+        public RuleMgtWrapperStub(CorrelationRuleDaoService correlationRuleDaoService) {\r
+            super(correlationRuleDaoService);\r
+            rules = new ArrayList<>();\r
+            CorrelationRule rule = new CorrelationRule();\r
+            rule.setEnabled(1);\r
+            rule.setContent("package org.onap.holmes;");\r
+            rule.setPackageName("UT");\r
+            rule.setClosedControlLoopName(UUID.randomUUID().toString());\r
+            rule.setEngineInstance("127.0.0.1");\r
+            rules.add(rule);\r
+        }\r
+\r
+        public List<CorrelationRule> getRules() {\r
+            return rules;\r
+        }\r
+\r
+        public void setRules(List<CorrelationRule> rules) {\r
+            this.rules = rules;\r
+        }\r
+\r
+        @Override\r
+        public List<CorrelationRule> queryRuleByEnable(int enabled) throws CorrelationException {\r
+            return rules.stream().filter(rule -> rule.getEnabled() == enabled).collect(Collectors.toList());\r
+        }\r
     }\r
-}\r
 \r
-class AlarmInfoDaoStub extends AlarmInfoDao {\r
-\r
-    private List<AlarmInfo> alarms;\r
-\r
-    public AlarmInfoDaoStub() {\r
-        alarms = new ArrayList<>();\r
-        AlarmInfo info = new AlarmInfo();\r
-        info.setEventId("eventId");\r
-        info.setEventName("eventName");\r
-        info.setStartEpochMicroSec(1L);\r
-        info.setLastEpochMicroSec(1L);\r
-        info.setSourceId("sourceId");\r
-        info.setSourceName("sourceName");\r
-        info.setRootFlag(0);\r
-        info.setAlarmIsCleared(1);\r
-        alarms.add(info);\r
+    class AlarmInfoDaoServiceStub extends AlarmInfoDaoService {\r
+\r
+        private List<AlarmInfo> alarms;\r
+\r
+        public AlarmInfoDaoServiceStub() {\r
+            alarms = new ArrayList<>();\r
+            AlarmInfo info = new AlarmInfo();\r
+            info.setEventId("eventId");\r
+            info.setEventName("eventName");\r
+            info.setStartEpochMicroSec(1L);\r
+            info.setLastEpochMicroSec(1L);\r
+            info.setSourceId("sourceId");\r
+            info.setSourceName("sourceName");\r
+            info.setRootFlag(0);\r
+            info.setAlarmIsCleared(1);\r
+            alarms.add(info);\r
+        }\r
+\r
+        @Override\r
+        public AlarmInfo saveAlarm(AlarmInfo alarmInfo) {\r
+            alarms.add(alarmInfo);\r
+            return alarmInfo;\r
+        }\r
+\r
+        @Override\r
+        public List<AlarmInfo> queryAllAlarm() {\r
+            return alarms;\r
+        }\r
+\r
+        @Override\r
+        public void deleteAlarm(AlarmInfo alarmInfo) {\r
+\r
+        }\r
     }\r
 \r
-    @Override\r
-    protected String addAlarm(AlarmInfo alarmInfo) {\r
-        alarms.add(alarmInfo);\r
-        return null;\r
-    }\r
-\r
-    @Override\r
-    protected List<AlarmInfo> queryAlarm() {\r
-        return alarms;\r
-    }\r
+    class CorrelationRuleDaoServiceStub extends CorrelationRuleDaoService {\r
 \r
-    @Override\r
-    protected int deleteAlarmByAlarmIsCleared(String alarmName, String sourceName, String sourceId) {\r
-        return 1;\r
     }\r
 }\r
 \r
-class DbDaoUtilStub extends DbDaoUtil {\r
-    private AlarmInfoDao dao = new AlarmInfoDaoStub();\r
 \r
-    @Override\r
-    public <T> T getJdbiDaoByOnDemand(Class<T> daoClazz) {\r
-\r
-        return (T) dao;\r
-\r
-    }\r
-}\r