You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by al...@apache.org on 2021/09/02 08:24:07 UTC
[dubbo] 02/02: Fix uts
This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.0-multi-instances
in repository https://gitbox.apache.org/repos/asf/dubbo.git
commit d183d9b035b19c260d03a612e23eeff47fbd1278
Author: Albumen Kevin <jh...@gmail.com>
AuthorDate: Thu Sep 2 16:23:16 2021 +0800
Fix uts
---
.../org/apache/dubbo/config/ReferenceConfig.java | 2 +
.../apache/dubbo/config/ReferenceConfigTest.java | 91 +++---------------
.../registry/integration/RegistryProtocolTest.java | 106 ++++++++++-----------
.../dubbo/rpc/protocol/grpc/GrpcProtocolTest.java | 4 +-
4 files changed, 67 insertions(+), 136 deletions(-)
diff --git a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
index 5b1cd75..97e52f6 100644
--- a/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
+++ b/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ReferenceConfig.java
@@ -421,6 +421,7 @@ public class ReferenceConfig<T> extends ReferenceConfigBase<T> {
if (StringUtils.isEmpty(url.getPath())) {
url = url.setPath(interfaceName);
}
+ url = url.setScopeModel(getScopeModel());
url = url.setServiceModel(consumerModel);
if (UrlUtils.isRegistry(url)) {
urls.add(url.putAttribute(REFER_KEY, referenceParameters));
@@ -445,6 +446,7 @@ public class ReferenceConfig<T> extends ReferenceConfigBase<T> {
if (monitorUrl != null) {
u = u.putAttribute(MONITOR_KEY, monitorUrl);
}
+ u = u.setScopeModel(getScopeModel());
u = u.setServiceModel(consumerModel);
urls.add(u.putAttribute(REFER_KEY, referenceParameters));
}
diff --git a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
index ed45fda..fa64410 100644
--- a/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
+++ b/dubbo-config/dubbo-config-api/src/test/java/org/apache/dubbo/config/ReferenceConfigTest.java
@@ -28,9 +28,6 @@ import org.apache.dubbo.config.annotation.Reference;
import org.apache.dubbo.config.api.DemoService;
import org.apache.dubbo.config.bootstrap.DubboBootstrap;
import org.apache.dubbo.config.provider.impl.DemoServiceImpl;
-
-import org.apache.dubbo.metadata.report.MetadataReport;
-import org.apache.dubbo.metadata.report.MetadataReportInstance;
import org.apache.dubbo.registry.client.migration.MigrationInvoker;
import org.apache.dubbo.rpc.Exporter;
import org.apache.dubbo.rpc.ProxyFactory;
@@ -480,9 +477,6 @@ public class ReferenceConfigTest {
Assertions.assertEquals("value2", url.getParameter("key2"));
dubboBootstrap.stop();
-
- applicationModelMockedStatic.closeOnDemand();
- metadataReportInstanceMockedStatic.closeOnDemand();
}
/**
@@ -498,10 +492,7 @@ public class ReferenceConfigTest {
referenceConfig.setLazy(false);
referenceConfig.setInjvm(false);
- DubboBootstrap.getInstance()
- .application("application1")
- .initialize();
- referenceConfig.setBootstrap(DubboBootstrap.getInstance());
+ DubboBootstrap dubboBootstrap = DubboBootstrap.newInstance(FrameworkModel.defaultModel());
ApplicationConfig applicationConfig = new ApplicationConfig();
applicationConfig.setName("application1");
@@ -510,35 +501,6 @@ public class ReferenceConfigTest {
parameters.put("key2", "value2");
applicationConfig.setParameters(parameters);
- ConfigManager configManager = mock(ConfigManager.class);
- Environment environment = mock(Environment.class);
- CompositeConfiguration compositeConfiguration = mock(CompositeConfiguration.class);
- Configuration dynamicGlobalConfiguration = mock(Configuration.class);
- ServiceRepository serviceRepository = mock(ServiceRepository.class);
- ConsumerModel consumerModel = mock(ConsumerModel.class);
-
- when(configManager.getApplicationOrElseThrow()).thenReturn(applicationConfig);
-
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
- applicationModelMockedStatic.when(ApplicationModel::getServiceRepository).thenReturn(serviceRepository);
- when(environment.getConfiguration()).thenReturn(compositeConfiguration);
- when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- when(compositeConfiguration.convert(Boolean.class, ENABLE_CONFIGURATION_LISTEN, true))
- .thenReturn(true);
-
- MockedStatic<MetadataReportInstance> metadataReportInstanceMockedStatic =
- Mockito.mockStatic(MetadataReportInstance.class);
-
- MetadataReport metadataReport = mock(MetadataReport.class);
- metadataReportInstanceMockedStatic.when(() -> MetadataReportInstance.getMetadataReport("default"))
- .thenReturn(metadataReport);
-
-
- when(serviceRepository.lookupReferredService("org.apache.dubbo.config.api.DemoService"))
- .thenReturn(consumerModel);
-
referenceConfig.refreshed.set(true);
referenceConfig.setInterface(DemoService.class);
referenceConfig.getInterfaceClass();
@@ -550,11 +512,15 @@ public class ReferenceConfigTest {
referenceConfig.setRegistry(registry);
+ dubboBootstrap
+ .application(applicationConfig)
+ .reference(referenceConfig)
+ .initialize();
+
referenceConfig.init();
Assertions.assertTrue(referenceConfig.getInvoker() instanceof MigrationInvoker);
- applicationModelMockedStatic.closeOnDemand();
- metadataReportInstanceMockedStatic.closeOnDemand();
+ dubboBootstrap.destroy();
}
/**
@@ -570,10 +536,7 @@ public class ReferenceConfigTest {
referenceConfig.setLazy(false);
referenceConfig.setInjvm(false);
- DubboBootstrap.getInstance()
- .application("application1")
- .initialize();
- referenceConfig.setBootstrap(DubboBootstrap.getInstance());
+ DubboBootstrap dubboBootstrap = DubboBootstrap.newInstance(FrameworkModel.defaultModel());
ApplicationConfig applicationConfig = new ApplicationConfig();
applicationConfig.setName("application1");
@@ -582,46 +545,22 @@ public class ReferenceConfigTest {
parameters.put("key2", "value2");
applicationConfig.setParameters(parameters);
- ConfigManager configManager = mock(ConfigManager.class);
- Environment environment = mock(Environment.class);
- CompositeConfiguration compositeConfiguration = mock(CompositeConfiguration.class);
- Configuration dynamicGlobalConfiguration = mock(Configuration.class);
- ServiceRepository serviceRepository = mock(ServiceRepository.class);
- ConsumerModel consumerModel = mock(ConsumerModel.class);
-
- when(configManager.getApplicationOrElseThrow()).thenReturn(applicationConfig);
-
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
- applicationModelMockedStatic.when(ApplicationModel::getServiceRepository).thenReturn(serviceRepository);
- when(environment.getConfiguration()).thenReturn(compositeConfiguration);
- when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- when(compositeConfiguration.convert(Boolean.class, ENABLE_CONFIGURATION_LISTEN, true))
- .thenReturn(true);
-
- MockedStatic<MetadataReportInstance> metadataReportInstanceMockedStatic =
- Mockito.mockStatic(MetadataReportInstance.class);
-
- MetadataReport metadataReport = mock(MetadataReport.class);
- metadataReportInstanceMockedStatic.when(() -> MetadataReportInstance.getMetadataReport("default"))
- .thenReturn(metadataReport);
-
-
- when(serviceRepository.lookupReferredService("org.apache.dubbo.config.api.DemoService"))
- .thenReturn(consumerModel);
-
referenceConfig.refreshed.set(true);
referenceConfig.setInterface(DemoService.class);
referenceConfig.getInterfaceClass();
referenceConfig.setCheck(false);
referenceConfig.setUrl(registryUrl);
+
+ dubboBootstrap
+ .application(applicationConfig)
+ .reference(referenceConfig)
+ .initialize();
+
referenceConfig.init();
Assertions.assertTrue(referenceConfig.getInvoker() instanceof MigrationInvoker);
+ dubboBootstrap.destroy();
- applicationModelMockedStatic.closeOnDemand();
- metadataReportInstanceMockedStatic.closeOnDemand();
}
diff --git a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/integration/RegistryProtocolTest.java b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/integration/RegistryProtocolTest.java
index 9f1e635..14e42e9 100644
--- a/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/integration/RegistryProtocolTest.java
+++ b/dubbo-registry/dubbo-registry-api/src/test/java/org/apache/dubbo/registry/integration/RegistryProtocolTest.java
@@ -35,10 +35,10 @@ import org.apache.dubbo.rpc.cluster.support.FailoverCluster;
import org.apache.dubbo.rpc.cluster.support.MergeableCluster;
import org.apache.dubbo.rpc.cluster.support.wrapper.MockClusterWrapper;
import org.apache.dubbo.rpc.model.ApplicationModel;
+
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import org.mockito.MockedStatic;
import org.mockito.Mockito;
import java.io.IOException;
@@ -47,10 +47,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import static org.apache.dubbo.common.constants.CommonConstants.DUBBO;
+import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.INTERFACE_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.PROTOCOL_KEY;
-import static org.apache.dubbo.common.constants.CommonConstants.GROUP_KEY;
-import static org.apache.dubbo.common.constants.CommonConstants.DUBBO;
import static org.apache.dubbo.common.constants.RegistryConstants.CATEGORY_KEY;
import static org.apache.dubbo.common.constants.RegistryConstants.CONSUMERS_CATEGORY;
import static org.apache.dubbo.registry.Constants.ENABLE_CONFIGURATION_LISTEN;
@@ -59,16 +59,16 @@ import static org.apache.dubbo.remoting.Constants.CHECK_KEY;
import static org.apache.dubbo.rpc.cluster.Constants.CONSUMER_URL_KEY;
import static org.apache.dubbo.rpc.cluster.Constants.REFER_KEY;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.mockStatic;
+import static org.mockito.Mockito.when;
public class RegistryProtocolTest {
@AfterEach
public void tearDown() throws IOException {
Mockito.framework().clearInlineMocks();
+ ApplicationModel.defaultModel().destroy();
}
/**
@@ -92,10 +92,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -117,7 +113,14 @@ public class RegistryProtocolTest {
Registry registry = mock(Registry.class);
RegistryProtocol registryProtocol = new RegistryProtocol();
- registryProtocol.setRegistryFactory(registryFactory);
+
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryFactory> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryFactory.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getAdaptiveExtension()).thenReturn(registryFactory);
+ url = url.setScopeModel(applicationModel);
+
when(registryFactory.getRegistry(registryProtocol.getRegistryUrl(url))).thenReturn(registry);
@@ -135,8 +138,6 @@ public class RegistryProtocolTest {
Assertions.assertEquals(parameters.get(REGISTER_IP_KEY), consumerUrl.getHost());
Assertions.assertFalse(consumerUrl.getAttributes().containsKey(REFER_KEY));
Assertions.assertEquals("value1", consumerUrl.getAttribute("key1"));
-
- applicationModelMockedStatic.closeOnDemand();
}
/**
@@ -160,10 +161,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -182,10 +179,16 @@ public class RegistryProtocolTest {
URL url = serviceConfigURL.addAttributes(attributes);
RegistryFactory registryFactory = mock(RegistryFactory.class);
- Registry registry = mock(Registry.class);
RegistryProtocol registryProtocol = new RegistryProtocol();
- registryProtocol.setRegistryFactory(registryFactory);
+ Registry registry = mock(Registry.class);
+
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryFactory> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryFactory.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getAdaptiveExtension()).thenReturn(registryFactory);
+ url = url.setScopeModel(applicationModel);
when(registryFactory.getRegistry(registryProtocol.getRegistryUrl(url))).thenReturn(registry);
@@ -204,7 +207,6 @@ public class RegistryProtocolTest {
Assertions.assertFalse(consumerUrl.getAttributes().containsKey(REFER_KEY));
Assertions.assertEquals("value1", consumerUrl.getAttribute("key1"));
- applicationModelMockedStatic.closeOnDemand();
}
/**
@@ -232,10 +234,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -255,7 +253,12 @@ public class RegistryProtocolTest {
Registry registry = mock(Registry.class);
RegistryProtocol registryProtocol = new RegistryProtocol();
- registryProtocol.setRegistryFactory(registryFactory);
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryFactory> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryFactory.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getAdaptiveExtension()).thenReturn(registryFactory);
+ url = url.setScopeModel(applicationModel);
when(registryFactory.getRegistry(registryProtocol.getRegistryUrl(url))).thenReturn(registry);
@@ -265,8 +268,6 @@ public class RegistryProtocolTest {
Assertions.assertTrue(((MigrationInvoker<?>) invoker).getCluster() instanceof MockClusterWrapper);
Assertions.assertTrue(
((MockClusterWrapper) ((MigrationInvoker<?>) invoker).getCluster()).getCluster() instanceof FailoverCluster);
-
- applicationModelMockedStatic.closeOnDemand();
}
/**
@@ -292,10 +293,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -317,7 +314,12 @@ public class RegistryProtocolTest {
Registry registry = mock(Registry.class);
RegistryProtocol registryProtocol = new RegistryProtocol();
- registryProtocol.setRegistryFactory(registryFactory);
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryFactory> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryFactory.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getAdaptiveExtension()).thenReturn(registryFactory);
+ url = url.setScopeModel(applicationModel);
when(registryFactory.getRegistry(registryProtocol.getRegistryUrl(url))).thenReturn(registry);
@@ -330,7 +332,6 @@ public class RegistryProtocolTest {
Assertions.assertTrue(
((MockClusterWrapper) ((MigrationInvoker<?>) invoker).getCluster()).getCluster() instanceof MergeableCluster);
- applicationModelMockedStatic.closeOnDemand();
}
/**
@@ -356,10 +357,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -377,7 +374,6 @@ public class RegistryProtocolTest {
attributes.put(REFER_KEY, refer);
URL url = serviceConfigURL.addAttributes(attributes);
- RegistryProtocol registryProtocol = new RegistryProtocol();
MigrationInvoker<?> clusterInvoker = mock(MigrationInvoker.class);
Map<String, Object> consumerAttribute = new HashMap<>(url.getAttributes());
@@ -393,19 +389,18 @@ public class RegistryProtocolTest {
MigrationRuleListener migrationRuleListener = mock(MigrationRuleListener.class);
List<RegistryProtocolListener> registryProtocolListeners = new ArrayList<>();
registryProtocolListeners.add(migrationRuleListener);
- MockedStatic<ExtensionLoader> extensionLoaderMockedStatic = mockStatic(ExtensionLoader.class);
- ExtensionLoader extensionLoaderForRegistryProtocolListener = mock(ExtensionLoader.class);
- when(ExtensionLoader.getExtensionLoader(RegistryProtocolListener.class))
- .thenReturn(extensionLoaderForRegistryProtocolListener);
- when(extensionLoaderForRegistryProtocolListener.getActivateExtension(url, "registry.protocol.listener"))
+
+ RegistryProtocol registryProtocol = new RegistryProtocol();
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryProtocolListener> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryProtocolListener.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getActivateExtension(url, "registry.protocol.listener"))
.thenReturn(registryProtocolListeners);
+ url = url.setScopeModel(applicationModel);
registryProtocol.interceptInvoker(clusterInvoker, url, consumerUrl, url);
verify(migrationRuleListener, times(1)).onRefer(registryProtocol, clusterInvoker, consumerUrl, url);
-
- extensionLoaderMockedStatic.closeOnDemand();
- applicationModelMockedStatic.closeOnDemand();
-
}
@@ -433,10 +428,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -472,7 +463,6 @@ public class RegistryProtocolTest {
registryProtocol.interceptInvoker(clusterInvoker, url, consumerUrl, url);
Assertions.assertEquals(1, CountRegistryProtocolListener.getReferCounter().get());
- applicationModelMockedStatic.closeOnDemand();
}
/**
@@ -496,10 +486,6 @@ public class RegistryProtocolTest {
when(environment.getConfiguration()).thenReturn(compositeConfiguration);
when(environment.getDynamicGlobalConfiguration()).thenReturn(dynamicGlobalConfiguration);
- MockedStatic<ApplicationModel> applicationModelMockedStatic = Mockito.mockStatic(ApplicationModel.class);
- applicationModelMockedStatic.when(ApplicationModel::getConfigManager).thenReturn(configManager);
- applicationModelMockedStatic.when(ApplicationModel::getEnvironment).thenReturn(environment);
-
Map<String, String> parameters = new HashMap<>();
parameters.put(INTERFACE_KEY, DemoService.class.getName());
parameters.put("registry", "zookeeper");
@@ -520,8 +506,14 @@ public class RegistryProtocolTest {
RegistryFactory registryFactory = mock(RegistryFactory.class);
Registry registry = mock(Registry.class);
+ ApplicationModel applicationModel = Mockito.spy(ApplicationModel.defaultModel());
+ applicationModel.getApplicationConfigManager().setApplication(new ApplicationConfig("application1"));
+ ExtensionLoader<RegistryFactory> extensionLoaderMock = mock(ExtensionLoader.class);
+ Mockito.when(applicationModel.getExtensionLoader(RegistryFactory.class)).thenReturn(extensionLoaderMock);
+ Mockito.when(extensionLoaderMock.getAdaptiveExtension()).thenReturn(registryFactory);
+ url = url.setScopeModel(applicationModel);
+
RegistryProtocol registryProtocol = new RegistryProtocol();
- registryProtocol.setRegistryFactory(registryFactory);
when(registryFactory.getRegistry(registryProtocol.getRegistryUrl(url))).thenReturn(registry);
@@ -543,8 +535,6 @@ public class RegistryProtocolTest {
String.valueOf(false));
verify(registry,times(1)).register(registeredConsumerUrl);
-
- applicationModelMockedStatic.closeOnDemand();
}
}
diff --git a/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java b/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
index 2c3ea35..75d1eb8 100644
--- a/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
+++ b/dubbo-rpc/dubbo-rpc-grpc/src/test/java/org/apache/dubbo/rpc/protocol/grpc/GrpcProtocolTest.java
@@ -17,8 +17,6 @@
package org.apache.dubbo.rpc.protocol.grpc;
-import com.google.common.util.concurrent.ListenableFuture;
-import io.grpc.stub.StreamObserver;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.extension.ExtensionLoader;
import org.apache.dubbo.common.utils.NetUtils;
@@ -35,6 +33,8 @@ import org.apache.dubbo.rpc.protocol.grpc.support.GrpcGreeterImpl;
import org.apache.dubbo.rpc.protocol.grpc.support.HelloReply;
import org.apache.dubbo.rpc.protocol.grpc.support.HelloRequest;
+import com.google.common.util.concurrent.ListenableFuture;
+import io.grpc.stub.StreamObserver;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;