diff --git a/test/src/test/java/com/alibaba/nacos/test/naming/RegisterInstance_ITCase.java b/test/src/test/java/com/alibaba/nacos/test/naming/RegisterInstance_ITCase.java index 7c61ef910..f1c462c7d 100644 --- a/test/src/test/java/com/alibaba/nacos/test/naming/RegisterInstance_ITCase.java +++ b/test/src/test/java/com/alibaba/nacos/test/naming/RegisterInstance_ITCase.java @@ -29,7 +29,9 @@ import org.springframework.boot.web.server.LocalServerPort; import org.springframework.test.context.junit4.SpringRunner; import java.util.Arrays; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.concurrent.TimeUnit; import static com.alibaba.nacos.test.naming.NamingBase.*; @@ -42,31 +44,35 @@ import static com.alibaba.nacos.test.naming.NamingBase.*; */ @RunWith(SpringRunner.class) @SpringBootTest(classes = NamingApp.class, properties = {"server.servlet.context-path=/nacos"}, - webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) + webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class RegisterInstance_ITCase { private NamingService naming; private NamingService naming2; @LocalServerPort private int port; + @Before - public void init() throws Exception{ + public void init() throws Exception { if (naming == null) { TimeUnit.SECONDS.sleep(10); - naming = NamingFactory.createNamingService("127.0.0.1"+":"+port); + naming = NamingFactory.createNamingService("127.0.0.1" + ":" + port); } } /** * 注册一个默认cluster的Instance,并验证 + * * @throws Exception */ @Test - public void regDomTest() throws Exception{ + public void regDomTest() throws Exception { String serviceName = randomDomainName(); naming.registerInstance(serviceName, TEST_IP_4_DOM_1, TEST_PORT); + System.out.println(serviceName); + TimeUnit.SECONDS.sleep(3); List instances = naming.getAllInstances(serviceName); @@ -80,10 +86,11 @@ public class RegisterInstance_ITCase { /** * 注册一个自定义cluster的Instance,并验证 + * * @throws Exception */ @Test - public void regDomClusterTest() throws Exception{ + public void regDomClusterTest() throws Exception { String serviceName = randomDomainName(); naming.registerInstance(serviceName, TEST_IP_4_DOM_1, TEST_PORT, TEST_NEW_CLUSTER_4_DOM_1); @@ -111,6 +118,7 @@ public class RegisterInstance_ITCase { /** * 注册一个自定义的Instance,并验证 + * * @throws Exception */ @Test @@ -132,6 +140,7 @@ public class RegisterInstance_ITCase { /** * 注册一个不健康的Instance,并验证 + * * @throws Exception */ @Test @@ -145,9 +154,34 @@ public class RegisterInstance_ITCase { TimeUnit.SECONDS.sleep(3); - List instances = naming.selectInstances(serviceName,false); + List instances = naming.selectInstances(serviceName, false); Assert.assertEquals(instances.size(), 1); Assert.assertEquals(instances.get(0).isHealthy(), false); } + + @Test + public void regServiceWithMetadata() throws Exception { + + String serviceName = randomDomainName(); + System.out.println(serviceName); + + Instance instance = new Instance(); + instance.setIp("1.1.1.2"); + instance.setPort(9999); + Map metadata = new HashMap(); + metadata.put("version", "1.0"); + metadata.put("env", "prod"); + instance.setMetadata(metadata); + + naming.registerInstance(serviceName, instance); + + TimeUnit.SECONDS.sleep(3); + + List instances = naming.getAllInstances(serviceName); + + Assert.assertEquals(1, instances.size()); + Assert.assertEquals("1.0", instances.get(0).getMetadata().get("version")); + Assert.assertEquals("prod", instances.get(0).getMetadata().get("env")); + } }