From 7c51c832204096bf95b3e36a44fb53d73b7fa083 Mon Sep 17 00:00:00 2001 From: lingniu Date: Wed, 1 Jul 2026 08:56:59 +0800 Subject: [PATCH] refactor: remove generic mqtt enable alias --- .../config/MqttInboundEnabledCondition.java | 3 +- .../MqttInboundEnabledConditionTest.java | 68 +++++++++++++++++++ 2 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 modules/inbound/inbound-mqtt/src/test/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledConditionTest.java diff --git a/modules/inbound/inbound-mqtt/src/main/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledCondition.java b/modules/inbound/inbound-mqtt/src/main/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledCondition.java index a7397679..12366dad 100644 --- a/modules/inbound/inbound-mqtt/src/main/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledCondition.java +++ b/modules/inbound/inbound-mqtt/src/main/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledCondition.java @@ -14,8 +14,7 @@ final class MqttInboundEnabledCondition implements Condition { if (direct != null) { return direct; } - return isTrue(env.getProperty("MQTT_ENABLED")) - || isTrue(env.getProperty("YUTONG_MQTT_ENABLED")); + return isTrue(env.getProperty("YUTONG_MQTT_ENABLED")); } private static boolean isTrue(String value) { diff --git a/modules/inbound/inbound-mqtt/src/test/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledConditionTest.java b/modules/inbound/inbound-mqtt/src/test/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledConditionTest.java new file mode 100644 index 00000000..2379fe69 --- /dev/null +++ b/modules/inbound/inbound-mqtt/src/test/java/com/lingniu/ingest/inbound/mqtt/config/MqttInboundEnabledConditionTest.java @@ -0,0 +1,68 @@ +package com.lingniu.ingest.inbound.mqtt.config; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; +import org.springframework.beans.factory.support.BeanDefinitionRegistry; +import org.springframework.context.annotation.ConditionContext; +import org.springframework.core.env.MapPropertySource; +import org.springframework.core.env.StandardEnvironment; +import org.springframework.core.io.ResourceLoader; + +import java.util.Map; + +import static org.assertj.core.api.Assertions.assertThat; + +class MqttInboundEnabledConditionTest { + + private final MqttInboundEnabledCondition condition = new MqttInboundEnabledCondition(); + + @Test + void ignoresLegacyGenericMqttEnabledEnvironmentAlias() { + assertThat(condition.matches(context(Map.of("MQTT_ENABLED", "true")), null)).isFalse(); + } + + @Test + void acceptsYutongMqttEnabledEnvironmentAlias() { + assertThat(condition.matches(context(Map.of("YUTONG_MQTT_ENABLED", "true")), null)).isTrue(); + } + + @Test + void directPropertyOverridesEnvironmentAlias() { + assertThat(condition.matches(context(Map.of( + "lingniu.ingest.mqtt.enabled", "false", + "YUTONG_MQTT_ENABLED", "true")), null)).isFalse(); + } + + private static ConditionContext context(Map properties) { + StandardEnvironment environment = new StandardEnvironment(); + environment.getPropertySources().addFirst(new MapPropertySource("test", properties)); + return new TestConditionContext(environment); + } + + private record TestConditionContext(StandardEnvironment environment) implements ConditionContext { + @Override + public BeanDefinitionRegistry getRegistry() { + return null; + } + + @Override + public ConfigurableListableBeanFactory getBeanFactory() { + return null; + } + + @Override + public StandardEnvironment getEnvironment() { + return environment; + } + + @Override + public ResourceLoader getResourceLoader() { + return null; + } + + @Override + public ClassLoader getClassLoader() { + return null; + } + } +}