diff --git a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnMultipleConfigTest.java b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnMultipleConfigTest.java index 147e2576ae..4bbd80c618 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnMultipleConfigTest.java +++ b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnMultipleConfigTest.java @@ -25,41 +25,33 @@ import org.apache.dubbo.config.ProviderConfig; import org.apache.dubbo.config.RegistryConfig; import org.apache.dubbo.config.bootstrap.DubboBootstrap; -import java.util.LinkedHashMap; -import java.util.Map; - import org.junit.After; import org.junit.Assert; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.context.ApplicationContext; -import org.springframework.core.env.Environment; +import org.springframework.context.annotation.ComponentScan; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit4.SpringRunner; -import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludingAncestors; - /** * {@link DubboAutoConfiguration} Test On multiple Dubbo Configuration * * @since 2.7.0 */ -@Ignore @RunWith(SpringRunner.class) @TestPropertySource( properties = { - "dubbo.applications.application1.NAME = dubbo-demo-application", - "dubbo.modules.module1.name = dubbo-demo-module", - "dubbo.registries.registry1.address = zookeeper://192.168.99.100:32770", + "dubbo.applications.application1.name=dubbo-demo-multi-application", + "dubbo.modules.module1.name=dubbo-demo-module", + "dubbo.registries.registry1.address=test://192.168.99.100:32770", "dubbo.protocols.protocol1.name=dubbo", - "dubbo.protocols.protocol1.pORt=20880", - "dubbo.monitors.monitor1.Address=zookeeper://127.0.0.1:32770", + "dubbo.protocols.protocol1.port=20880", + "dubbo.monitors.monitor1.address=test://127.0.0.1:32770", "dubbo.providers.provider1.host=127.0.0.1", "dubbo.consumers.consumer1.client=netty", "dubbo.config.multiple=true", @@ -67,62 +59,39 @@ import static org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncl }) @SpringBootTest(classes = {DubboAutoConfigurationOnMultipleConfigTest.class}) @EnableAutoConfiguration +@ComponentScan public class DubboAutoConfigurationOnMultipleConfigTest { - @Autowired - private Environment environment; - - @Autowired - private ApplicationContext applicationContext; - /** - * {@link ApplicationConfig} + * @see TestBeansConfiguration */ @Autowired @Qualifier("application1") - private ApplicationConfig application; + ApplicationConfig application; - /** - * {@link ModuleConfig} - */ @Autowired @Qualifier("module1") - private ModuleConfig module; + ModuleConfig module; - /** - * {@link RegistryConfig} - */ @Autowired @Qualifier("registry1") - private RegistryConfig registry; + RegistryConfig registry; - /** - * {@link ProtocolConfig} - */ - @Autowired - @Qualifier("protocol1") - private ProtocolConfig protocol; - - /** - * {@link MonitorConfig} - */ @Autowired @Qualifier("monitor1") - private MonitorConfig monitor; + MonitorConfig monitor; - /** - * {@link ProviderConfig} - */ @Autowired - @Qualifier("provider1") - private ProviderConfig provider; + @Qualifier("protocol1") + ProtocolConfig protocol; - /** - * {@link ConsumerConfig} - */ @Autowired @Qualifier("consumer1") - private ConsumerConfig consumer; + ConsumerConfig consumer; + + @Autowired + @Qualifier("provider1") + ProviderConfig provider; @Before public void init() { @@ -134,134 +103,24 @@ public class DubboAutoConfigurationOnMultipleConfigTest { DubboBootstrap.reset(); } - @Autowired - private Map applications = new LinkedHashMap<>(); - - @Autowired - private Map modules = new LinkedHashMap<>(); - - @Autowired - private Map registries = new LinkedHashMap<>(); - - @Autowired - private Map protocols = new LinkedHashMap<>(); - - @Autowired - private Map monitors = new LinkedHashMap<>(); - - @Autowired - private Map providers = new LinkedHashMap<>(); - - @Autowired - private Map consumers = new LinkedHashMap<>(); - @Test - public void testMultipleDubboConfigBindingProperties() { - - Assert.assertEquals(1, applications.size()); - - Assert.assertEquals(1, modules.size()); - - Assert.assertEquals(1, registries.size()); - - Assert.assertEquals(1, protocols.size()); - - Assert.assertEquals(1, monitors.size()); - - Assert.assertEquals(1, providers.size()); - - Assert.assertEquals(1, consumers.size()); - } - - @Test - public void testApplicationContext() { - - /** - * Multiple {@link ApplicationConfig} - */ - Map applications = - beansOfTypeIncludingAncestors(applicationContext, ApplicationConfig.class); - - Assert.assertEquals(1, applications.size()); - - /** - * Multiple {@link ModuleConfig} - */ - Map modules = beansOfTypeIncludingAncestors(applicationContext, ModuleConfig.class); - - Assert.assertEquals(1, modules.size()); - - /** - * Multiple {@link RegistryConfig} - */ - Map registries = - beansOfTypeIncludingAncestors(applicationContext, RegistryConfig.class); - - Assert.assertEquals(1, registries.size()); - - /** - * Multiple {@link ProtocolConfig} - */ - Map protocols = beansOfTypeIncludingAncestors(applicationContext, ProtocolConfig.class); - - Assert.assertEquals(1, protocols.size()); - - /** - * Multiple {@link MonitorConfig} - */ - Map monitors = beansOfTypeIncludingAncestors(applicationContext, MonitorConfig.class); - - Assert.assertEquals(1, monitors.size()); - - /** - * Multiple {@link ProviderConfig} - */ - Map providers = beansOfTypeIncludingAncestors(applicationContext, ProviderConfig.class); - - Assert.assertEquals(1, providers.size()); - - /** - * Multiple {@link ConsumerConfig} - */ - Map consumers = beansOfTypeIncludingAncestors(applicationContext, ConsumerConfig.class); - - Assert.assertEquals(1, consumers.size()); - } - - @Test - public void testApplicationConfig() { - - Assert.assertEquals("dubbo-demo-application", application.getName()); - } - - @Test - public void testModuleConfig() { - + public void testMultiConfig() { + // application + Assert.assertEquals("dubbo-demo-multi-application", application.getName()); + // module Assert.assertEquals("dubbo-demo-module", module.getName()); - } - - @Test - public void testRegistryConfig() { - - Assert.assertEquals("zookeeper://192.168.99.100:32770", registry.getAddress()); - } - - @Test - public void testMonitorConfig() { - - Assert.assertEquals("zookeeper://127.0.0.1:32770", monitor.getAddress()); - } - - @Test - public void testProtocolConfig() { - + // registry + Assert.assertEquals("test://192.168.99.100:32770", registry.getAddress()); + Assert.assertEquals("test", registry.getProtocol()); + Assert.assertEquals(Integer.valueOf(32770), registry.getPort()); + // monitor + Assert.assertEquals("test://127.0.0.1:32770", monitor.getAddress()); + // protocol Assert.assertEquals("dubbo", protocol.getName()); Assert.assertEquals(Integer.valueOf(20880), protocol.getPort()); - } - - @Test - public void testConsumerConfig() { - + // consumer Assert.assertEquals("netty", consumer.getClient()); + // provider + Assert.assertEquals("127.0.0.1", provider.getHost()); } } diff --git a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnSingleConfigTest.java b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnSingleConfigTest.java index 2cfc203543..214b0cec7f 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnSingleConfigTest.java +++ b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/DubboAutoConfigurationOnSingleConfigTest.java @@ -28,14 +28,12 @@ import org.apache.dubbo.config.bootstrap.DubboBootstrap; import org.junit.After; import org.junit.Assert; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.context.ApplicationContext; -import org.springframework.core.env.Environment; +import org.springframework.context.annotation.ComponentScan; import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit4.SpringRunner; @@ -44,21 +42,21 @@ import org.springframework.test.context.junit4.SpringRunner; * * @since 2.7.0 */ -@Ignore @RunWith(SpringRunner.class) @TestPropertySource( properties = { - "dubbo.application.name = dubbo-demo-application", + "dubbo.application.name = dubbo-demo-single-application", "dubbo.module.name = dubbo-demo-module", - "dubbo.registry.address = zookeeper://192.168.99.100:32770", + "dubbo.registry.address = test://192.168.99.100:32770", "dubbo.protocol.name=dubbo", "dubbo.protocol.port=20880", - "dubbo.monitor.address=zookeeper://127.0.0.1:32770", + "dubbo.monitor.address=test://127.0.0.1:32770", "dubbo.provider.host=127.0.0.1", "dubbo.consumer.client=netty" }) @SpringBootTest(classes = {DubboAutoConfigurationOnSingleConfigTest.class}) @EnableAutoConfiguration +@ComponentScan public class DubboAutoConfigurationOnSingleConfigTest { @Autowired @@ -82,12 +80,6 @@ public class DubboAutoConfigurationOnSingleConfigTest { @Autowired private ProtocolConfig protocolConfig; - @Autowired - private Environment environment; - - @Autowired - private ApplicationContext applicationContext; - @Before public void init() { DubboBootstrap.reset(); @@ -99,45 +91,21 @@ public class DubboAutoConfigurationOnSingleConfigTest { } @Test - public void testApplicationConfig() { - - Assert.assertEquals("dubbo-demo-application", applicationConfig.getName()); - } - - @Test - public void testModuleConfig() { - + public void testSingleConfig() { + // application + Assert.assertEquals("dubbo-demo-single-application", applicationConfig.getName()); + // module Assert.assertEquals("dubbo-demo-module", moduleConfig.getName()); - } - - @Test - public void testRegistryConfig() { - - Assert.assertEquals("zookeeper://192.168.99.100:32770", registryConfig.getAddress()); - } - - @Test - public void testMonitorConfig() { - - Assert.assertEquals("zookeeper://127.0.0.1:32770", monitorConfig.getAddress()); - } - - @Test - public void testProtocolConfig() { - + // registry + Assert.assertEquals("test://192.168.99.100:32770", registryConfig.getAddress()); + // monitor + Assert.assertEquals("test://127.0.0.1:32770", monitorConfig.getAddress()); + // protocol Assert.assertEquals("dubbo", protocolConfig.getName()); Assert.assertEquals(Integer.valueOf(20880), protocolConfig.getPort()); - } - - @Test - public void testProviderConfig() { - + // consumer + Assert.assertEquals("netty", consumerConfig.getClient()); + // provider Assert.assertEquals("127.0.0.1", providerConfig.getHost()); } - - @Test - public void testConsumerConfig() { - - Assert.assertEquals("netty", consumerConfig.getClient()); - } } diff --git a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/TestBeansConfiguration.java b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/TestBeansConfiguration.java new file mode 100644 index 0000000000..d51a9142c7 --- /dev/null +++ b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/autoconfigure/TestBeansConfiguration.java @@ -0,0 +1,81 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.dubbo.spring.boot.autoconfigure; + +import org.apache.dubbo.config.ApplicationConfig; +import org.apache.dubbo.config.ConsumerConfig; +import org.apache.dubbo.config.ModuleConfig; +import org.apache.dubbo.config.MonitorConfig; +import org.apache.dubbo.config.ProtocolConfig; +import org.apache.dubbo.config.ProviderConfig; +import org.apache.dubbo.config.RegistryConfig; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class TestBeansConfiguration { + + @Bean + ApplicationConfig application1() { + ApplicationConfig config = new ApplicationConfig(); + config.setId("application1"); + return config; + } + + @Bean + ModuleConfig module1() { + ModuleConfig config = new ModuleConfig(); + config.setId("module1"); + return config; + } + + @Bean + RegistryConfig registry1() { + RegistryConfig config = new RegistryConfig(); + config.setId("registry1"); + return config; + } + + @Bean + MonitorConfig monitor1() { + MonitorConfig config = new MonitorConfig(); + config.setId("monitor1"); + return config; + } + + @Bean + ProtocolConfig protocol1() { + ProtocolConfig config = new ProtocolConfig(); + config.setId("protocol1"); + return config; + } + + @Bean + ConsumerConfig consumer1() { + ConsumerConfig config = new ConsumerConfig(); + config.setId("consumer1"); + return config; + } + + @Bean + ProviderConfig provider1() { + ProviderConfig config = new ProviderConfig(); + config.setId("provider1"); + return config; + } +} diff --git a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/context/event/AwaitingNonWebApplicationListenerTest.java b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/context/event/AwaitingNonWebApplicationListenerTest.java index 6e4823ce1c..26132270d0 100644 --- a/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/context/event/AwaitingNonWebApplicationListenerTest.java +++ b/dubbo-spring-boot/dubbo-spring-boot-compatible/autoconfigure/src/test/java/org/apache/dubbo/spring/boot/context/event/AwaitingNonWebApplicationListenerTest.java @@ -20,10 +20,12 @@ import org.apache.dubbo.config.bootstrap.DubboBootstrap; import org.junit.After; import org.junit.Before; +import org.junit.Ignore; /** * {@link AwaitingNonWebApplicationListener} Test */ +@Ignore public class AwaitingNonWebApplicationListenerTest { @Before