Skip to content

Commit a828eb4

Browse files
authored
Remove dubbo-test in dubbo-metrics,dubbo-registry,dubbo-serialization (#15218)
1 parent 48b2389 commit a828eb4

15 files changed

Lines changed: 213 additions & 71 deletions

File tree

dubbo-metrics/dubbo-metrics-api/src/test/java/org/apache/dubbo/metrics/event/SimpleMetricsEventMulticasterTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.apache.dubbo.metrics.listener.MetricsLifeListener;
2323
import org.apache.dubbo.rpc.model.ApplicationModel;
2424

25+
import org.junit.jupiter.api.AfterEach;
2526
import org.junit.jupiter.api.Assertions;
2627
import org.junit.jupiter.api.BeforeEach;
2728
import org.junit.jupiter.api.Test;
@@ -55,6 +56,11 @@ public void onEvent(MetricsEvent event) {
5556
requestEvent = new TimeCounterEvent(applicationModel, null) {};
5657
}
5758

59+
@AfterEach
60+
public void destroy() {
61+
ApplicationModel.defaultModel().destroy();
62+
}
63+
5864
@Test
5965
void testPublishFinishEvent() {
6066

dubbo-metrics/dubbo-metrics-api/src/test/java/org/apache/dubbo/metrics/model/ApplicationMetricTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import java.util.Map;
2323

24+
import org.junit.jupiter.api.AfterEach;
2425
import org.junit.jupiter.api.Assertions;
2526
import org.junit.jupiter.api.Test;
2627

@@ -101,4 +102,10 @@ void testEquals() {}
101102

102103
@Test
103104
void testHashCode() {}
105+
106+
@AfterEach
107+
public void destroy() {
108+
ApplicationModel applicationModel = ApplicationModel.defaultModel();
109+
applicationModel.destroy();
110+
}
104111
}

dubbo-metrics/dubbo-metrics-default/src/test/java/org/apache/dubbo/metrics/metrics/model/sample/ErrorCodeSampleTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import java.util.List;
3131
import java.util.concurrent.atomic.AtomicLong;
3232

33+
import org.junit.jupiter.api.AfterEach;
3334
import org.junit.jupiter.api.Test;
3435

3536
public class ErrorCodeSampleTest {
@@ -70,4 +71,9 @@ void testErrorCodeMetric() {
7071

7172
System.out.println(samples);
7273
}
74+
75+
@AfterEach
76+
public void tearDown() {
77+
FrameworkModel.defaultModel().destroy();
78+
}
7379
}

dubbo-metrics/dubbo-metrics-default/src/test/java/org/apache/dubbo/monitor/support/MonitorFilterTest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,12 @@
2828
import org.apache.dubbo.rpc.RpcContext;
2929
import org.apache.dubbo.rpc.RpcException;
3030
import org.apache.dubbo.rpc.RpcInvocation;
31+
import org.apache.dubbo.rpc.model.ApplicationModel;
3132

3233
import java.util.Arrays;
3334
import java.util.List;
3435

36+
import org.junit.jupiter.api.AfterEach;
3537
import org.junit.jupiter.api.Assertions;
3638
import org.junit.jupiter.api.Test;
3739
import org.mockito.Mockito;
@@ -240,4 +242,10 @@ void testOnErrorWithoutStartTime() {
240242
Throwable rpcException = new RpcException();
241243
monitorFilter.onError(rpcException, serviceInvoker, invocation);
242244
}
245+
246+
@AfterEach
247+
public void destroy() {
248+
ApplicationModel applicationModel = ApplicationModel.defaultModel();
249+
applicationModel.destroy();
250+
}
243251
}

dubbo-metrics/dubbo-metrics-registry/src/test/java/org/apache/dubbo/metrics/registry/metrics/collector/RegistryMetricsCollectorTest.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@
3030
import org.apache.dubbo.rpc.model.ApplicationModel;
3131
import org.apache.dubbo.rpc.model.FrameworkModel;
3232

33+
import java.util.ArrayList;
3334
import java.util.Collections;
3435
import java.util.HashMap;
3536
import java.util.List;
3637
import java.util.Map;
3738
import java.util.Objects;
3839
import java.util.stream.Collectors;
3940

40-
import com.google.common.collect.Lists;
4141
import org.junit.jupiter.api.AfterEach;
4242
import org.junit.jupiter.api.Assertions;
4343
import org.junit.jupiter.api.BeforeEach;
@@ -75,8 +75,9 @@ public void teardown() {
7575

7676
@Test
7777
void testRegisterMetrics() {
78-
79-
RegistryEvent registryEvent = RegistryEvent.toRegisterEvent(applicationModel, Lists.newArrayList("reg1"));
78+
List<String> registryClusterNames = new ArrayList<>();
79+
registryClusterNames.add("reg1");
80+
RegistryEvent registryEvent = RegistryEvent.toRegisterEvent(applicationModel, registryClusterNames);
8081
MetricsEventBus.post(registryEvent, () -> {
8182
List<MetricSample> metricSamples = collector.collect();
8283
// push success +1 -> other default 0 = APP_LEVEL_KEYS.size()
@@ -94,7 +95,7 @@ void testRegisterMetrics() {
9495
Assertions.assertEquals(APP_LEVEL_KEYS.size() + REGISTER_LEVEL_KEYS.size() + 5, metricSamples.size());
9596
long c1 = registryEvent.getTimePair().calc();
9697

97-
registryEvent = RegistryEvent.toRegisterEvent(applicationModel, Lists.newArrayList("reg1"));
98+
registryEvent = RegistryEvent.toRegisterEvent(applicationModel, registryClusterNames);
9899
TimePair lastTimePair = registryEvent.getTimePair();
99100
MetricsEventBus.post(
100101
registryEvent,
@@ -145,7 +146,8 @@ void testRegisterMetrics() {
145146
void testServicePushMetrics() {
146147

147148
String serviceName = "demo.gameService";
148-
List<String> rcNames = Lists.newArrayList("demo1");
149+
List<String> rcNames = new ArrayList<>();
150+
rcNames.add("demo1");
149151

150152
RegistryEvent registryEvent = RegistryEvent.toRsEvent(applicationModel, serviceName, 2, rcNames);
151153
MetricsEventBus.post(registryEvent, () -> {

dubbo-metrics/dubbo-metrics-registry/src/test/java/org/apache/dubbo/metrics/registry/metrics/collector/RegistryMetricsTest.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.apache.dubbo.rpc.model.ApplicationModel;
2929
import org.apache.dubbo.rpc.model.FrameworkModel;
3030

31+
import java.util.ArrayList;
3132
import java.util.List;
3233
import java.util.NoSuchElementException;
3334
import java.util.Optional;
@@ -37,7 +38,6 @@
3738
import java.util.concurrent.ScheduledFuture;
3839
import java.util.concurrent.TimeUnit;
3940

40-
import com.google.common.collect.Lists;
4141
import org.junit.jupiter.api.Assertions;
4242
import org.junit.jupiter.api.BeforeEach;
4343
import org.junit.jupiter.api.Test;
@@ -292,13 +292,16 @@ void eventFailed(RegistryEvent event) {
292292
}
293293

294294
RegistryEvent registerEvent() {
295-
RegistryEvent event = RegistryEvent.toRegisterEvent(applicationModel, Lists.newArrayList("reg1"));
295+
List<String> registryClusterNames = new ArrayList<>();
296+
registryClusterNames.add("reg1");
297+
RegistryEvent event = RegistryEvent.toRegisterEvent(applicationModel, registryClusterNames);
296298
event.setAvailable(true);
297299
return event;
298300
}
299301

300302
RegistryEvent rsEvent() {
301-
List<String> rcNames = Lists.newArrayList("demo1");
303+
List<String> rcNames = new ArrayList<>();
304+
rcNames.add("demo1");
302305
RegistryEvent event = RegistryEvent.toRsEvent(applicationModel, "TestServiceInterface1", 1, rcNames);
303306
event.setAvailable(true);
304307
return event;

dubbo-metrics/pom.xml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,4 @@
4242
<skip_maven_deploy>false</skip_maven_deploy>
4343
</properties>
4444

45-
<dependencies>
46-
<dependency>
47-
<groupId>org.apache.dubbo</groupId>
48-
<artifactId>dubbo-test-check</artifactId>
49-
<version>${project.parent.version}</version>
50-
<scope>test</scope>
51-
</dependency>
52-
</dependencies>
5345
</project>

dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/registry/nacos/NacosServiceDiscoveryFactoryTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import org.apache.dubbo.registry.client.ServiceDiscovery;
2222
import org.apache.dubbo.rpc.model.ApplicationModel;
2323

24+
import org.junit.jupiter.api.AfterEach;
2425
import org.junit.jupiter.api.Assertions;
2526
import org.junit.jupiter.api.BeforeEach;
2627
import org.junit.jupiter.api.Test;
@@ -49,4 +50,9 @@ void testGetServiceDiscoveryWithCache() {
4950

5051
Assertions.assertTrue(discovery instanceof NacosServiceDiscovery);
5152
}
53+
54+
@AfterEach
55+
public void tearDown() {
56+
ApplicationModel.defaultModel().destroy();
57+
}
5258
}

dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/registry/nacos/NacosServiceDiscoveryTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ public void init() throws Exception {
130130

131131
@AfterEach
132132
public void destroy() throws Exception {
133+
ApplicationModel.defaultModel().destroy();
133134
nacosServiceDiscovery.destroy();
134135
}
135136

dubbo-registry/dubbo-registry-zookeeper/src/test/java/org/apache/dubbo/registry/zookeeper/ZookeeperRegistryTest.java

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@
1717
package org.apache.dubbo.registry.zookeeper;
1818

1919
import org.apache.dubbo.common.URL;
20-
import org.apache.dubbo.common.status.Status;
2120
import org.apache.dubbo.registry.NotifyListener;
22-
import org.apache.dubbo.registry.Registry;
23-
import org.apache.dubbo.registry.status.RegistryStatusChecker;
21+
import org.apache.dubbo.remoting.zookeeper.curator5.ZookeeperClient;
22+
import org.apache.dubbo.remoting.zookeeper.curator5.ZookeeperClientManager;
2423
import org.apache.dubbo.rpc.RpcException;
2524
import org.apache.dubbo.rpc.model.ApplicationModel;
2625

@@ -29,39 +28,51 @@
2928
import java.util.Set;
3029
import java.util.concurrent.CountDownLatch;
3130

31+
import com.google.common.collect.Lists;
3232
import org.junit.jupiter.api.Assertions;
3333
import org.junit.jupiter.api.BeforeAll;
3434
import org.junit.jupiter.api.BeforeEach;
35-
import org.junit.jupiter.api.Disabled;
3635
import org.junit.jupiter.api.Test;
3736

3837
import static org.hamcrest.CoreMatchers.is;
39-
import static org.hamcrest.CoreMatchers.not;
40-
import static org.hamcrest.CoreMatchers.nullValue;
4138
import static org.hamcrest.MatcherAssert.assertThat;
4239
import static org.hamcrest.Matchers.containsString;
4340
import static org.junit.jupiter.api.Assertions.fail;
41+
import static org.mockito.ArgumentMatchers.any;
42+
import static org.mockito.ArgumentMatchers.anyBoolean;
43+
import static org.mockito.Mockito.doAnswer;
44+
import static org.mockito.Mockito.doThrow;
4445
import static org.mockito.Mockito.mock;
46+
import static org.mockito.Mockito.when;
4547

4648
class ZookeeperRegistryTest {
4749
private static String zookeeperConnectionAddress1;
4850
private ZookeeperRegistry zookeeperRegistry;
4951
private String service = "org.apache.dubbo.test.injvmServie";
50-
private URL serviceUrl = URL.valueOf("zookeeper://zookeeper/" + service + "?notify=false&methods=test1,test2");
52+
private String url = "zookeeper://zookeeper/" + service + "?notify=false&methods=test1,test2";
53+
private URL serviceUrl = URL.valueOf(url);
5154
private URL anyUrl = URL.valueOf("zookeeper://zookeeper/*");
5255
private URL registryUrl;
5356
private ZookeeperRegistryFactory zookeeperRegistryFactory;
5457
private NotifyListener listener;
5558

59+
// mock object
60+
private static ZookeeperClientManager mockZookeeperClientManager;
61+
private static ZookeeperClient mockZookeeperClient;
62+
5663
@BeforeAll
5764
public static void beforeAll() {
58-
zookeeperConnectionAddress1 = System.getProperty("zookeeper.connection.address.1");
65+
zookeeperConnectionAddress1 = "zookeeper://localhost:" + "2181";
5966
}
6067

6168
@BeforeEach
6269
public void setUp() throws Exception {
70+
mockZookeeperClientManager = mock(ZookeeperClientManager.class);
71+
mockZookeeperClient = mock(ZookeeperClient.class);
6372
this.registryUrl = URL.valueOf(zookeeperConnectionAddress1);
6473
zookeeperRegistryFactory = new ZookeeperRegistryFactory(ApplicationModel.defaultModel());
74+
zookeeperRegistryFactory.setZookeeperTransporter(mockZookeeperClientManager);
75+
when(mockZookeeperClientManager.connect(registryUrl)).thenReturn(mockZookeeperClient);
6576
this.zookeeperRegistry = (ZookeeperRegistry) zookeeperRegistryFactory.createRegistry(registryUrl);
6677
}
6778

@@ -105,6 +116,7 @@ void testSubscribe() {
105116
@Test
106117
void testAvailable() {
107118
zookeeperRegistry.register(serviceUrl);
119+
when(mockZookeeperClient.isConnected()).thenReturn(true);
108120
assertThat(zookeeperRegistry.isAvailable(), is(true));
109121

110122
zookeeperRegistry.destroy();
@@ -113,6 +125,7 @@ void testAvailable() {
113125

114126
@Test
115127
void testLookup() {
128+
when(mockZookeeperClient.getChildren(any())).thenReturn(Lists.newArrayList(url));
116129
List<URL> lookup = zookeeperRegistry.lookup(serviceUrl);
117130
assertThat(lookup.size(), is(1));
118131

@@ -134,36 +147,21 @@ void testLookupIllegalUrl() {
134147
@Test
135148
void testLookupWithException() {
136149
URL errorUrl = URL.valueOf("multicast://0.0.0.0/");
150+
when(mockZookeeperClient.getChildren(any())).thenThrow(new IllegalStateException());
137151
Assertions.assertThrows(RpcException.class, () -> zookeeperRegistry.lookup(errorUrl));
138152
}
139153

140-
@Disabled
141-
@Test
142-
/*
143-
This UT is unstable, consider remove it later.
144-
@see https://github.com/apache/dubbo/issues/1787
145-
*/
146-
public void testStatusChecker() {
147-
RegistryStatusChecker registryStatusChecker = new RegistryStatusChecker(ApplicationModel.defaultModel());
148-
Status status = registryStatusChecker.check();
149-
assertThat(status.getLevel(), is(Status.Level.UNKNOWN));
150-
151-
Registry registry = zookeeperRegistryFactory.getRegistry(registryUrl);
152-
assertThat(registry, not(nullValue()));
153-
154-
status = registryStatusChecker.check();
155-
assertThat(status.getLevel(), is(Status.Level.ERROR));
156-
157-
registry.register(serviceUrl);
158-
status = registryStatusChecker.check();
159-
assertThat(status.getLevel(), is(Status.Level.OK));
160-
}
161-
162154
@Test
163155
void testSubscribeAnyValue() throws InterruptedException {
164156
final CountDownLatch latch = new CountDownLatch(1);
165157
zookeeperRegistry.register(serviceUrl);
166158
zookeeperRegistry.subscribe(anyUrl, urls -> latch.countDown());
159+
doAnswer(invocationOnMock -> {
160+
latch.countDown();
161+
return null;
162+
})
163+
.when(mockZookeeperClient)
164+
.create(any(), anyBoolean(), anyBoolean());
167165
zookeeperRegistry.register(serviceUrl);
168166
latch.await();
169167
}
@@ -176,6 +174,7 @@ void testDestroy() {
176174

177175
@Test
178176
void testDoRegisterWithException() {
177+
doThrow(new IllegalStateException()).when(mockZookeeperClient).create(any(), anyBoolean(), anyBoolean());
179178
Assertions.assertThrows(RpcException.class, () -> {
180179
URL errorUrl = URL.valueOf("multicast://0.0.0.0/");
181180
zookeeperRegistry.doRegister(errorUrl);
@@ -184,6 +183,7 @@ void testDoRegisterWithException() {
184183

185184
@Test
186185
void testDoUnregisterWithException() {
186+
doThrow(new IllegalStateException()).when(mockZookeeperClient).delete(any());
187187
Assertions.assertThrows(RpcException.class, () -> {
188188
URL errorUrl = URL.valueOf("multicast://0.0.0.0/");
189189
zookeeperRegistry.doUnregister(errorUrl);

0 commit comments

Comments
 (0)