X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=engine-d%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fholmes%2Fengine%2Fmanager%2FDroolsEngineTest.java;h=31f181798abd54ee60625019945bf7ba3f2dfd10;hb=c4bd70c1f74cd04c441f76de4359e166a089660a;hp=4ad910780c4c4f694c7996478f7e821b58c16e28;hpb=163dd74935802f562ef7272cadf0f88b6a63960a;p=holmes%2Fengine-management.git diff --git a/engine-d/src/test/java/org/onap/holmes/engine/manager/DroolsEngineTest.java b/engine-d/src/test/java/org/onap/holmes/engine/manager/DroolsEngineTest.java index 4ad9107..31f1817 100644 --- a/engine-d/src/test/java/org/onap/holmes/engine/manager/DroolsEngineTest.java +++ b/engine-d/src/test/java/org/onap/holmes/engine/manager/DroolsEngineTest.java @@ -1,5 +1,5 @@ /** - * Copyright 2017 ZTE Corporation. + * Copyright 2017-2021 ZTE Corporation. *

* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,28 +16,26 @@ package org.onap.holmes.engine.manager; -import org.junit.Before; -import org.junit.BeforeClass; import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; import org.onap.holmes.common.api.entity.AlarmInfo; import org.onap.holmes.common.api.entity.CorrelationRule; import org.onap.holmes.common.api.stat.VesAlarm; +import org.onap.holmes.common.config.MicroServiceConfig; +import org.onap.holmes.common.dmaap.store.ClosedLoopControlNameCache; import org.onap.holmes.common.exception.CorrelationException; -import org.onap.holmes.common.utils.DbDaoUtil; -import org.onap.holmes.engine.db.AlarmInfoDao; +import org.onap.holmes.engine.db.AlarmInfoDaoService; +import org.onap.holmes.engine.db.CorrelationRuleDaoService; import org.onap.holmes.engine.request.DeployRuleRequest; import org.onap.holmes.engine.wrapper.RuleMgtWrapper; -import org.powermock.api.easymock.PowerMock; import org.powermock.reflect.Whitebox; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.*; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; import java.util.stream.Collectors; -import static org.easymock.EasyMock.anyObject; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.core.IsEqual.equalTo; import static org.junit.Assert.assertThat; @@ -47,26 +45,29 @@ public class DroolsEngineTest { @Rule public ExpectedException thrown = ExpectedException.none(); - private RuleMgtWrapper ruleMgtWrapper; - - private AlarmInfoDao alarmInfoDaoMock; + private RuleMgtWrapper ruleMgtWrapperMock; private DroolsEngine droolsEngine; - private DbDaoUtil dbDaoUtilStub; + private AlarmInfoDaoService alarmInfoDaoServiceStub; + + private CorrelationRuleDaoService correlationRuleDaoServiceStub; + + private ClosedLoopControlNameCache closedLoopControlNameCache; public DroolsEngineTest() throws Exception { + System.setProperty(MicroServiceConfig.HOSTNAME, "127.0.0.1:80"); droolsEngine = new DroolsEngine(); - ruleMgtWrapper = new RuleMgtWrapperStub(); - dbDaoUtilStub = new DbDaoUtilStub(); - Whitebox.setInternalState(droolsEngine, "daoUtil", dbDaoUtilStub); - Whitebox.setInternalState(droolsEngine, "ruleMgtWrapper", ruleMgtWrapper); - Whitebox.invokeMethod(droolsEngine, "init"); - } - - @Before - public void setUp() throws Exception { - PowerMock.resetAll(); + alarmInfoDaoServiceStub = new AlarmInfoDaoServiceStub(); + droolsEngine.setAlarmInfoDaoService(alarmInfoDaoServiceStub); + correlationRuleDaoServiceStub = new CorrelationRuleDaoServiceStub(); + ruleMgtWrapperMock = new RuleMgtWrapperStub(correlationRuleDaoServiceStub); + closedLoopControlNameCache = new ClosedLoopControlNameCache(); + droolsEngine.setClosedLoopControlNameCache(closedLoopControlNameCache); + droolsEngine.setRuleMgtWrapper(ruleMgtWrapperMock); + + Whitebox.invokeMethod(droolsEngine, "run", null); + System.clearProperty(MicroServiceConfig.HOSTNAME); } @Test @@ -236,76 +237,74 @@ public class DroolsEngineTest { assertThat(packages.contains("packageCheck"), is(true)); } -} -class RuleMgtWrapperStub extends RuleMgtWrapper { - private List rules; - - public RuleMgtWrapperStub() { - rules = new ArrayList<>(); - CorrelationRule rule = new CorrelationRule(); - rule.setEnabled(1); - rule.setContent("package org.onap.holmes;"); - rule.setPackageName("UT"); - rule.setClosedControlLoopName(UUID.randomUUID().toString()); - rules.add(rule); + class RuleMgtWrapperStub extends RuleMgtWrapper { + private List rules; + + public RuleMgtWrapperStub(CorrelationRuleDaoService correlationRuleDaoService) { + super(correlationRuleDaoService); + rules = new ArrayList<>(); + CorrelationRule rule = new CorrelationRule(); + rule.setEnabled(1); + rule.setContent("package org.onap.holmes;"); + rule.setPackageName("UT"); + rule.setClosedControlLoopName(UUID.randomUUID().toString()); + rule.setEngineInstance("127.0.0.1"); + rules.add(rule); + } + + public List getRules() { + return rules; + } + + public void setRules(List rules) { + this.rules = rules; + } + + @Override + public List queryRuleByEnable(int enabled) throws CorrelationException { + return rules.stream().filter(rule -> rule.getEnabled() == enabled).collect(Collectors.toList()); + } } - public List getRules() { - return rules; + class AlarmInfoDaoServiceStub extends AlarmInfoDaoService { + + private List alarms; + + public AlarmInfoDaoServiceStub() { + alarms = new ArrayList<>(); + AlarmInfo info = new AlarmInfo(); + info.setEventId("eventId"); + info.setEventName("eventName"); + info.setStartEpochMicroSec(1L); + info.setLastEpochMicroSec(1L); + info.setSourceId("sourceId"); + info.setSourceName("sourceName"); + info.setRootFlag(0); + info.setAlarmIsCleared(1); + alarms.add(info); + } + + @Override + public AlarmInfo saveAlarm(AlarmInfo alarmInfo) { + alarms.add(alarmInfo); + return alarmInfo; + } + + @Override + public List queryAllAlarm() { + return alarms; + } + + @Override + public void deleteAlarm(AlarmInfo alarmInfo) { + + } } - public void setRules(List rules) { - this.rules = rules; - } + class CorrelationRuleDaoServiceStub extends CorrelationRuleDaoService { - @Override - public List queryRuleByEnable(int enabled) throws CorrelationException { - return rules.stream().filter(rule -> rule.getEnabled() == enabled).collect(Collectors.toList()); } } -class AlarmInfoDaoStub extends AlarmInfoDao { - - private List alarms; - - public AlarmInfoDaoStub() { - alarms = new ArrayList<>(); - AlarmInfo info = new AlarmInfo(); - info.setEventId("eventId"); - info.setEventName("eventName"); - info.setStartEpochMicroSec(1L); - info.setLastEpochMicroSec(1L); - info.setSourceId("sourceId"); - info.setSourceName("sourceName"); - info.setRootFlag(0); - info.setAlarmIsCleared(1); - alarms.add(info); - } - - @Override - protected String addAlarm(AlarmInfo alarmInfo) { - alarms.add(alarmInfo); - return null; - } - @Override - protected List queryAlarm() { - return alarms; - } - - @Override - protected int deleteAlarmByAlarmIsCleared(int alarmIsCleared) { - return 1; - } -} - -class DbDaoUtilStub extends DbDaoUtil { - private AlarmInfoDao dao = new AlarmInfoDaoStub(); - @Override - public T getJdbiDaoByOnDemand(Class daoClazz) { - - return (T)dao; - - } -}