mirror of
https://github.com/danieldemus/openhab-core.git
synced 2026-07-29 12:34:22 +02:00
Fix rule startlevel trigger executes during initialization (#3717)
* Fix rule startlevel trigger executes during initialization Signed-off-by: Jan N. Klug <github@klug.nrw>
This commit is contained in:
+7
-1
@@ -16,6 +16,7 @@ import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Optional;
|
||||
@@ -80,6 +81,7 @@ public class AutomationIntegrationJsonTest extends JavaOSGiTest {
|
||||
private final Logger logger = LoggerFactory.getLogger(AutomationIntegrationJsonTest.class);
|
||||
private @NonNullByDefault({}) EventPublisher eventPublisher;
|
||||
private @NonNullByDefault({}) ItemRegistry itemRegistry;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
private @NonNullByDefault({}) RuleRegistry ruleRegistry;
|
||||
private @NonNullByDefault({}) RuleManager ruleManager;
|
||||
private @NonNullByDefault({}) ManagedRuleProvider managedRuleProvider;
|
||||
@@ -96,8 +98,12 @@ public class AutomationIntegrationJsonTest extends JavaOSGiTest {
|
||||
|
||||
eventPublisher = getService(EventPublisher.class);
|
||||
itemRegistry = getService(ItemRegistry.class);
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
eventPublisher, itemRegistry, mock(TimeZoneProvider.class), mock(StartLevelService.class));
|
||||
eventPublisher, itemRegistry, mock(TimeZoneProvider.class), startLevelService);
|
||||
mock(CoreModuleHandlerFactory.class);
|
||||
registerService(coreModuleHandlerFactory);
|
||||
|
||||
|
||||
+7
-1
@@ -17,6 +17,7 @@ import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
@@ -98,6 +99,7 @@ public class AutomationIntegrationTest extends JavaOSGiTest {
|
||||
private final Logger logger = LoggerFactory.getLogger(AutomationIntegrationTest.class);
|
||||
private @Nullable EventPublisher eventPublisher;
|
||||
private @Nullable ItemRegistry itemRegistry;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
private @Nullable RuleRegistry ruleRegistry;
|
||||
private @Nullable RuleManager ruleEngine;
|
||||
private @Nullable ManagedRuleProvider managedRuleProvider;
|
||||
@@ -113,9 +115,13 @@ public class AutomationIntegrationTest extends JavaOSGiTest {
|
||||
|
||||
eventPublisher = getService(EventPublisher.class);
|
||||
itemRegistry = getService(ItemRegistry.class);
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
Objects.requireNonNull(eventPublisher), Objects.requireNonNull(itemRegistry),
|
||||
mock(TimeZoneProvider.class), mock(StartLevelService.class));
|
||||
mock(TimeZoneProvider.class), startLevelService);
|
||||
mock(CoreModuleHandlerFactory.class);
|
||||
registerService(coreModuleHandlerFactory);
|
||||
|
||||
|
||||
+8
@@ -15,6 +15,8 @@ package org.openhab.core.automation.integration.test;
|
||||
import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
@@ -54,6 +56,7 @@ import org.openhab.core.automation.util.RuleBuilder;
|
||||
import org.openhab.core.common.registry.ProviderChangeListener;
|
||||
import org.openhab.core.config.core.Configuration;
|
||||
import org.openhab.core.service.ReadyMarker;
|
||||
import org.openhab.core.service.StartLevelService;
|
||||
import org.openhab.core.storage.StorageService;
|
||||
import org.openhab.core.test.java.JavaOSGiTest;
|
||||
import org.slf4j.Logger;
|
||||
@@ -71,11 +74,16 @@ public class RuleSimulationTest extends JavaOSGiTest {
|
||||
|
||||
private @Nullable RuleRegistry ruleRegistry;
|
||||
private @Nullable RuleManager ruleEngine;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
registerVolatileStorageService();
|
||||
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
|
||||
StorageService storageService = getService(StorageService.class);
|
||||
|
||||
ruleRegistry = getService(RuleRegistry.class);
|
||||
|
||||
+5
@@ -15,6 +15,7 @@ package org.openhab.core.automation.internal.module;
|
||||
import static java.util.Map.entry;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -69,9 +70,13 @@ public class RunRuleModuleTest extends JavaOSGiTest {
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(RunRuleModuleTest.class);
|
||||
private final VolatileStorageService volatileStorageService = new VolatileStorageService();
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
EventPublisher eventPublisher = getService(EventPublisher.class);
|
||||
ItemRegistry itemRegistry = getService(ItemRegistry.class);
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
|
||||
+5
@@ -15,6 +15,7 @@ package org.openhab.core.automation.internal.module;
|
||||
import static java.util.Map.entry;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
@@ -79,9 +80,13 @@ public class RuntimeRuleTest extends JavaOSGiTest {
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(RuntimeRuleTest.class);
|
||||
private final VolatileStorageService volatileStorageService = new VolatileStorageService();
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
EventPublisher eventPublisher = getService(EventPublisher.class);
|
||||
ItemRegistry itemRegistry = getService(ItemRegistry.class);
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
|
||||
+5
@@ -16,6 +16,7 @@ import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -78,6 +79,7 @@ public abstract class BasicConditionHandlerTest extends JavaOSGiTest {
|
||||
private @NonNullByDefault({}) RuleRegistry ruleRegistry;
|
||||
private @NonNullByDefault({}) RuleManager ruleEngine;
|
||||
private @Nullable Event itemEvent;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
/**
|
||||
* This executes before every test and before the
|
||||
@@ -86,6 +88,9 @@ public abstract class BasicConditionHandlerTest extends JavaOSGiTest {
|
||||
*/
|
||||
@BeforeEach
|
||||
public void beforeBase() {
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
EventPublisher eventPublisher = getService(EventPublisher.class);
|
||||
ItemRegistry itemRegistry = getService(ItemRegistry.class);
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
|
||||
+5
@@ -16,6 +16,7 @@ import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
@@ -75,9 +76,13 @@ public class RuntimeRuleTest extends JavaOSGiTest {
|
||||
private VolatileStorageService volatileStorageService = new VolatileStorageService();
|
||||
private @NonNullByDefault({}) RuleRegistry ruleRegistry;
|
||||
private @NonNullByDefault({}) RuleManager ruleEngine;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
EventPublisher eventPublisher = getService(EventPublisher.class);
|
||||
ItemRegistry itemRegistry = getService(ItemRegistry.class);
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
|
||||
+5
@@ -17,6 +17,7 @@ import static org.hamcrest.CoreMatchers.*;
|
||||
import static org.hamcrest.MatcherAssert.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -78,12 +79,16 @@ public class RuleEventTest extends JavaOSGiTest {
|
||||
|
||||
private @Nullable Event itemEvent = null;
|
||||
private @Nullable Event ruleRemovedEvent = null;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
public RuleEventTest() {
|
||||
}
|
||||
|
||||
@BeforeEach
|
||||
public void before() {
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
EventPublisher eventPublisher = getService(EventPublisher.class);
|
||||
ItemRegistry itemRegistry = getService(ItemRegistry.class);
|
||||
CoreModuleHandlerFactory coreModuleHandlerFactory = new CoreModuleHandlerFactory(getBundleContext(),
|
||||
|
||||
+7
@@ -13,6 +13,8 @@
|
||||
package org.openhab.core.automation.internal;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
@@ -41,6 +43,7 @@ import org.openhab.core.config.core.ConfigDescriptionParameterBuilder;
|
||||
import org.openhab.core.config.core.Configuration;
|
||||
import org.openhab.core.config.core.FilterCriteria;
|
||||
import org.openhab.core.config.core.ParameterOption;
|
||||
import org.openhab.core.service.StartLevelService;
|
||||
import org.openhab.core.test.java.JavaOSGiTest;
|
||||
|
||||
/**
|
||||
@@ -54,10 +57,14 @@ public class RuleEngineTest extends JavaOSGiTest {
|
||||
|
||||
private @NonNullByDefault({}) RuleEngineImpl ruleEngine;
|
||||
private @NonNullByDefault({}) RuleRegistry ruleRegistry;
|
||||
private @NonNullByDefault({}) StartLevelService startLevelService;
|
||||
|
||||
@BeforeEach
|
||||
public void setup() {
|
||||
registerVolatileStorageService();
|
||||
startLevelService = mock(StartLevelService.class);
|
||||
when(startLevelService.getStartLevel()).thenReturn(100);
|
||||
registerService(startLevelService, StartLevelService.class.getName());
|
||||
ruleEngine = (RuleEngineImpl) getService(RuleManager.class);
|
||||
ruleRegistry = getService(RuleRegistry.class);
|
||||
registerService(new TestModuleTypeProvider(), ModuleTypeProvider.class.getName());
|
||||
|
||||
Reference in New Issue
Block a user