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/21 16:09:18 UTC
[dubbo] branch 3.0 updated: Add test case for
ZookeeperMetadataReportTest (#8840)
This is an automated email from the ASF dual-hosted git repository.
albumenj pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git
The following commit(s) were added to refs/heads/3.0 by this push:
new 419e125 Add test case for ZookeeperMetadataReportTest (#8840)
419e125 is described below
commit 419e1250cffd9d4b09ec226f5d0dab335875f5c5
Author: 灼华 <43...@users.noreply.github.com>
AuthorDate: Wed Sep 22 00:09:04 2021 +0800
Add test case for ZookeeperMetadataReportTest (#8840)
* Add test case for ZookeeperMetadataReportTest
1.test case
2.fix typo
3.remove unused param
* Restore original method signature
* Restore original method signature
---
.../common/utils/ServiceAnnotationResolver.java | 2 +-
.../rest/ClassPathServiceRestMetadataReader.java | 8 ++--
.../SpringMvcServiceRestMetadataResolverTest.java | 2 +-
....json => spring-mvc-service-rest-metadata.json} | 0
.../metadata/store/redis/RedisMetadataReport.java | 5 ++-
.../zookeeper/ZookeeperMetadataReportTest.java | 50 ++++++++++++++++++++--
.../registry/client/ServiceDiscoveryRegistry.java | 4 +-
7 files changed, 57 insertions(+), 14 deletions(-)
diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ServiceAnnotationResolver.java b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ServiceAnnotationResolver.java
index c49b3a3..8fc8bc6 100644
--- a/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ServiceAnnotationResolver.java
+++ b/dubbo-common/src/main/java/org/apache/dubbo/common/utils/ServiceAnnotationResolver.java
@@ -84,7 +84,7 @@ public class ServiceAnnotationResolver {
*/
public String resolveInterfaceClassName() {
- Class interfaceClass = null;
+ Class interfaceClass;
// first, try to get the value from "interfaceName" attribute
String interfaceName = resolveAttribute("interfaceName");
diff --git a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/rest/ClassPathServiceRestMetadataReader.java b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/rest/ClassPathServiceRestMetadataReader.java
index bd4d5a0..f8b9514 100644
--- a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/rest/ClassPathServiceRestMetadataReader.java
+++ b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/rest/ClassPathServiceRestMetadataReader.java
@@ -41,14 +41,14 @@ import static org.apache.dubbo.metadata.rest.RestMetadataConstants.SERVICE_REST_
*/
public class ClassPathServiceRestMetadataReader implements ServiceRestMetadataReader {
- private final String serviceRestMetadataJsonResoucePath;
+ private final String serviceRestMetadataJsonResourcePath;
public ClassPathServiceRestMetadataReader() {
this(SERVICE_REST_METADATA_RESOURCE_PATH);
}
- public ClassPathServiceRestMetadataReader(String serviceRestMetadataJsonResoucePath) {
- this.serviceRestMetadataJsonResoucePath = serviceRestMetadataJsonResoucePath;
+ public ClassPathServiceRestMetadataReader(String serviceRestMetadataJsonResourcePath) {
+ this.serviceRestMetadataJsonResourcePath = serviceRestMetadataJsonResourcePath;
}
@Override
@@ -59,7 +59,7 @@ public class ClassPathServiceRestMetadataReader implements ServiceRestMetadataRe
ClassLoader classLoader = getClass().getClassLoader();
execute(() -> {
- Enumeration<URL> resources = classLoader.getResources(serviceRestMetadataJsonResoucePath);
+ Enumeration<URL> resources = classLoader.getResources(serviceRestMetadataJsonResourcePath);
Gson gson = new Gson();
while (resources.hasMoreElements()) {
URL resource = resources.nextElement();
diff --git a/dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/rest/springmvc/SpringMvcServiceRestMetadataResolverTest.java b/dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/rest/springmvc/SpringMvcServiceRestMetadataResolverTest.java
index 43abc8f..0d1da96 100644
--- a/dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/rest/springmvc/SpringMvcServiceRestMetadataResolverTest.java
+++ b/dubbo-metadata/dubbo-metadata-api/src/test/java/org/apache/dubbo/metadata/rest/springmvc/SpringMvcServiceRestMetadataResolverTest.java
@@ -59,7 +59,7 @@ public class SpringMvcServiceRestMetadataResolverTest {
@Test
public void testResolve() {
// Generated by "dubbo-metadata-processor"
- ClassPathServiceRestMetadataReader reader = new ClassPathServiceRestMetadataReader("META-INF/dubbo/spring-mvc-servoce-rest-metadata.json");
+ ClassPathServiceRestMetadataReader reader = new ClassPathServiceRestMetadataReader("META-INF/dubbo/spring-mvc-service-rest-metadata.json");
List<ServiceRestMetadata> serviceRestMetadataList = reader.read();
ServiceRestMetadata expectedServiceRestMetadata = serviceRestMetadataList.get(0);
diff --git a/dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/spring-mvc-servoce-rest-metadata.json b/dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/spring-mvc-service-rest-metadata.json
similarity index 100%
rename from dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/spring-mvc-servoce-rest-metadata.json
rename to dubbo-metadata/dubbo-metadata-api/src/test/resources/META-INF/dubbo/spring-mvc-service-rest-metadata.json
diff --git a/dubbo-metadata/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java b/dubbo-metadata/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
index c00be04..e8a5bcc 100644
--- a/dubbo-metadata/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
+++ b/dubbo-metadata/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
@@ -55,8 +55,9 @@ public class RedisMetadataReport extends AbstractMetadataReport {
private final static String REDIS_DATABASE_KEY = "database";
private final static Logger logger = LoggerFactory.getLogger(RedisMetadataReport.class);
- JedisPool pool;
- Set<HostAndPort> jedisClusterNodes;
+ // protected , for test
+ protected JedisPool pool;
+ private Set<HostAndPort> jedisClusterNodes;
private int timeout;
private String password;
diff --git a/dubbo-metadata/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java b/dubbo-metadata/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
index f1ab756..b77897c 100644
--- a/dubbo-metadata/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
+++ b/dubbo-metadata/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
@@ -17,7 +17,9 @@
package org.apache.dubbo.metadata.store.zookeeper;
import org.apache.dubbo.common.URL;
+import org.apache.dubbo.common.config.configcenter.ConfigItem;
import org.apache.dubbo.common.utils.NetUtils;
+import org.apache.dubbo.metadata.MetadataInfo;
import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
import org.apache.dubbo.metadata.report.MetadataReport;
@@ -33,14 +35,13 @@ import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
import static org.apache.dubbo.common.constants.CommonConstants.CONSUMER_SIDE;
import static org.apache.dubbo.common.constants.CommonConstants.PROVIDER_SIDE;
+import static org.apache.dubbo.metadata.ServiceNameMapping.DEFAULT_MAPPING_GROUP;
/**
* 2018/10/9
@@ -273,4 +274,45 @@ public class ZookeeperMetadataReportTest {
+ application + (group == null ? "" : "&group=" + group));
return url;
}
+
+
+ @Test
+ public void testMapping() throws InterruptedException {
+ String serviceKey = ZookeeperMetadataReportTest.class.getName();
+ URL url = URL.valueOf("test://127.0.0.1:8888/" + serviceKey);
+ String appNames = "demo1,demo2";
+
+ CountDownLatch latch = new CountDownLatch(1);
+ Set<String> serviceAppMapping = zookeeperMetadataReport.getServiceAppMapping(serviceKey, event -> {
+ Set<String> apps = event.getApps();
+ Assertions.assertEquals(apps.size(), 2);
+ Assertions.assertTrue(apps.contains("demo1"));
+ Assertions.assertTrue(apps.contains("demo2"));
+ latch.countDown();
+ }, url);
+ Assertions.assertTrue(serviceAppMapping.isEmpty());
+
+ ConfigItem configItem = zookeeperMetadataReport.getConfigItem(serviceKey, DEFAULT_MAPPING_GROUP);
+ zookeeperMetadataReport.registerServiceAppMapping(serviceKey, DEFAULT_MAPPING_GROUP, appNames, configItem.getTicket());
+ latch.await();
+ }
+
+ @Test
+ public void testAppMetadata() {
+ String serviceKey = ZookeeperMetadataReportTest.class.getName();
+ String appName = "demo";
+ URL url = URL.valueOf("test://127.0.0.1:8888/" + serviceKey);
+ MetadataInfo metadataInfo = new MetadataInfo(appName);
+ metadataInfo.addService(new MetadataInfo.ServiceInfo(url));
+
+ SubscriberMetadataIdentifier identifier = new SubscriberMetadataIdentifier(appName, metadataInfo.calAndGetRevision());
+ MetadataInfo appMetadata = zookeeperMetadataReport.getAppMetadata(identifier, Collections.emptyMap());
+ Assertions.assertNull(appMetadata);
+
+ zookeeperMetadataReport.publishAppMetadata(identifier, metadataInfo);
+ appMetadata = zookeeperMetadataReport.getAppMetadata(identifier, Collections.emptyMap());
+ Assertions.assertNotNull(appMetadata);
+ Assertions.assertEquals(appMetadata.calAndGetRevision(), metadataInfo.calAndGetRevision());
+
+ }
}
diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java
index 0916710..999078b 100644
--- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java
+++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java
@@ -93,7 +93,7 @@ public class ServiceDiscoveryRegistry implements Registry {
this.registryManager = registryURL.getOrDefaultApplicationModel().getBeanFactory().getBean(RegistryManager.class);
}
- // Currently for test purpose
+ // Currently, for test purpose
protected ServiceDiscoveryRegistry(URL registryURL, ServiceDiscovery serviceDiscovery, WritableMetadataService writableMetadataService) {
this.registryURL = registryURL;
this.serviceDiscovery = serviceDiscovery;
@@ -142,7 +142,7 @@ public class ServiceDiscoveryRegistry implements Registry {
if (!should) {
if (logger.isDebugEnabled()) {
- logger.debug(String.format("The URL[%s] should not be registered.", providerURL.toString()));
+ logger.debug(String.format("The URL[%s] should not be registered.", providerURL));
}
}