[SCB-2638] Remove jmockit from dynamic-config module (#3200)
diff --git a/dynamic-config/config-apollo/pom.xml b/dynamic-config/config-apollo/pom.xml
index 69ac357..13487f9 100644
--- a/dynamic-config/config-apollo/pom.xml
+++ b/dynamic-config/config-apollo/pom.xml
@@ -40,10 +40,5 @@
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
- <dependency>
- <groupId>org.jmockit</groupId>
- <artifactId>jmockit</artifactId>
- <scope>test</scope>
- </dependency>
</dependencies>
</project>
diff --git a/dynamic-config/config-apollo/src/main/java/org/apache/servicecomb/config/client/ApolloClient.java b/dynamic-config/config-apollo/src/main/java/org/apache/servicecomb/config/client/ApolloClient.java
index d838d34..9dc040c 100644
--- a/dynamic-config/config-apollo/src/main/java/org/apache/servicecomb/config/client/ApolloClient.java
+++ b/dynamic-config/config-apollo/src/main/java/org/apache/servicecomb/config/client/ApolloClient.java
@@ -29,6 +29,7 @@
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
+import com.google.common.annotations.VisibleForTesting;
import org.apache.servicecomb.config.archaius.sources.ApolloConfigurationSourceImpl.UpdateHandler;
import org.apache.servicecomb.foundation.common.utils.JsonUtils;
import org.slf4j.Logger;
@@ -77,6 +78,16 @@
this.updateHandler = updateHandler;
}
+ @VisibleForTesting
+ static Map<String, Object> getOriginalConfigMap() {
+ return originalConfigMap;
+ }
+
+ @VisibleForTesting
+ static void setRest(RestTemplate rest) {
+ ApolloClient.rest = rest;
+ }
+
public void refreshApolloConfig() {
EXECUTOR
.scheduleWithFixedDelay(new ConfigRefresh(serviceUri), firstRefreshInterval, refreshInterval, TimeUnit.SECONDS);
diff --git a/dynamic-config/config-apollo/src/test/java/org/apache/servicecomb/config/client/ApolloClientTest.java b/dynamic-config/config-apollo/src/test/java/org/apache/servicecomb/config/client/ApolloClientTest.java
index 2d73b62..66ae6c1 100644
--- a/dynamic-config/config-apollo/src/test/java/org/apache/servicecomb/config/client/ApolloClientTest.java
+++ b/dynamic-config/config-apollo/src/test/java/org/apache/servicecomb/config/client/ApolloClientTest.java
@@ -35,8 +35,6 @@
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
-import mockit.Deencapsulation;
-
public class ApolloClientTest {
@BeforeAll
public static void setUpClass() {
@@ -48,6 +46,7 @@
public void refreshApolloConfig() {
ApolloConfig apolloConfig = ApolloConfig.INSTANCE;
RestTemplate rest = Mockito.mock(RestTemplate.class);
+ ApolloClient.setRest(rest);
ResponseEntity<String> responseEntity = new ResponseEntity<>(
"{\"apollo\":\"mocked\", \"configurations\":{\"timeout\":1000}}", HttpStatus.OK);
@@ -59,12 +58,10 @@
ApolloConfigurationSourceImpl impl = new ApolloConfigurationSourceImpl();
UpdateHandler updateHandler = impl.new UpdateHandler();
ApolloClient apolloClient = new ApolloClient(updateHandler);
- Deencapsulation.setField(apolloClient, "rest", rest);
ConfigRefresh cr = apolloClient.new ConfigRefresh(apolloConfig.getServerUri());
cr.run();
- Map<String, Object> originMap = Deencapsulation.getField(apolloClient, "originalConfigMap");
- Assertions.assertEquals(1, originMap.size());
+ Assertions.assertEquals(1, ApolloClient.getOriginalConfigMap().size());
}
@Test
diff --git a/dynamic-config/config-cc/pom.xml b/dynamic-config/config-cc/pom.xml
index 1a9edc2..cfc44b0 100644
--- a/dynamic-config/config-cc/pom.xml
+++ b/dynamic-config/config-cc/pom.xml
@@ -63,11 +63,6 @@
<groupId>org.apache.servicecomb</groupId>
<artifactId>config-center-client</artifactId>
</dependency>
- <dependency>
- <groupId>org.jmockit</groupId>
- <artifactId>jmockit</artifactId>
- <scope>test</scope>
- </dependency>
</dependencies>
</project>
diff --git a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/ConfigCenterConfigurationSourceImplTest.java b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/ConfigCenterConfigurationSourceImplTest.java
index dc0dbb0..a1466a5 100644
--- a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/ConfigCenterConfigurationSourceImplTest.java
+++ b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/ConfigCenterConfigurationSourceImplTest.java
@@ -29,8 +29,6 @@
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
-import mockit.Deencapsulation;
-
class ConfigCenterConfigurationSourceImplTest {
@Test
@@ -64,7 +62,7 @@
AddressManager addressManager = new AddressManager("test", addresses, EventManager.getEventBus());
addressManager.onRefreshEndpointEvent(event);
- List<String> availableAZ = Deencapsulation.getField(addressManager, "availableZone");
+ List<String> availableAZ = addressManager.getAvailableZone();
Assertions.assertEquals("https://127.0.0.1:30100/v3/test", availableAZ.get(0));
}
}
diff --git a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/center/client/AddressManagerTest.java b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/center/client/AddressManagerTest.java
index fc8c0c9..1e72e85 100644
--- a/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/center/client/AddressManagerTest.java
+++ b/dynamic-config/config-cc/src/test/java/org/apache/servicecomb/config/center/client/AddressManagerTest.java
@@ -28,8 +28,6 @@
import com.google.common.eventbus.EventBus;
-import mockit.Deencapsulation;
-
class AddressManagerTest {
private static final List<String> addresses = new ArrayList<>();
@@ -47,7 +45,7 @@
Assertions.assertNotNull(addressManager1);
Assertions.assertNotNull(addressManager2);
- List<String> addresses = Deencapsulation.getField(addressManager1, "addresses");
+ List<String> addresses = addressManager1.getAddresses();
Assertions.assertEquals(2, addresses.size());
Assertions.assertEquals("http://127.0.0.1:30103/v3/project", addresses.get(0));
@@ -69,10 +67,10 @@
RefreshEndpointEvent event = new RefreshEndpointEvent(zoneAndRegion, "CseConfigCenter");
addressManager1.refreshEndpoint(event, "CseConfigCenter");
- List<String> availableZone = Deencapsulation.getField(addressManager1, "availableZone");
+ List<String> availableZone = addressManager1.getAvailableZone();
Assertions.assertEquals("http://127.0.0.3:30100/v3/project", availableZone.get(0));
- List<String> availableRegion = Deencapsulation.getField(addressManager1, "availableRegion");
+ List<String> availableRegion = addressManager1.getAvailableRegion();
Assertions.assertEquals("http://127.0.0.4:30100/v3/project", availableRegion.get(0));
Assertions.assertEquals("http://127.0.0.3:30100/v3/project", addressManager1.address());
diff --git a/dynamic-config/config-nacos/pom.xml b/dynamic-config/config-nacos/pom.xml
index bf12272..1f279d0 100644
--- a/dynamic-config/config-nacos/pom.xml
+++ b/dynamic-config/config-nacos/pom.xml
@@ -41,10 +41,5 @@
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</dependency>
- <dependency>
- <groupId>org.jmockit</groupId>
- <artifactId>jmockit</artifactId>
- <scope>test</scope>
- </dependency>
</dependencies>
</project>
diff --git a/dynamic-config/config-nacos/src/main/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImpl.java b/dynamic-config/config-nacos/src/main/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImpl.java
index abed303..528553c 100644
--- a/dynamic-config/config-nacos/src/main/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImpl.java
+++ b/dynamic-config/config-nacos/src/main/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImpl.java
@@ -27,6 +27,7 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
+import com.google.common.annotations.VisibleForTesting;
import org.apache.commons.configuration.Configuration;
import org.apache.servicecomb.config.ConfigMapping;
import org.apache.servicecomb.config.nacos.client.ConfigurationAction;
@@ -52,6 +53,11 @@
private final UpdateHandler updateHandler = new UpdateHandler();
+ @VisibleForTesting
+ UpdateHandler getUpdateHandler() {
+ return updateHandler;
+ }
+
@Override
public int getOrder() {
return ORDER_BASE * 4;
diff --git a/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImplTest.java b/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImplTest.java
index f388fcb..aa51be7 100644
--- a/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImplTest.java
+++ b/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/archaius/sources/NacosConfigurationSourceImplTest.java
@@ -28,27 +28,25 @@
import com.netflix.config.WatchedUpdateListener;
-import mockit.Deencapsulation;
-
public class NacosConfigurationSourceImplTest {
@Test
public void testCreate() throws Exception {
NacosConfigurationSourceImpl nacosConfigurationSource = new NacosConfigurationSourceImpl();
nacosConfigurationSource.addUpdateListener(result -> Assertions.assertFalse(result.getAdded().isEmpty()));
- UpdateHandler udateHandler = Deencapsulation.getField(nacosConfigurationSource, UpdateHandler.class);
+ UpdateHandler updateHandler = nacosConfigurationSource.getUpdateHandler();
Map<String, Object> createItems = new HashMap<>();
createItems.put("nacosTestKey", "testValue");
- udateHandler.handle(ConfigurationAction.CREATE, createItems);
+ updateHandler.handle(ConfigurationAction.CREATE, createItems);
}
@Test
public void testUpdate() throws Exception {
NacosConfigurationSourceImpl nacosConfigurationSource = new NacosConfigurationSourceImpl();
nacosConfigurationSource.addUpdateListener(result -> Assertions.assertFalse(result.getChanged().isEmpty()));
- UpdateHandler udateHandler = Deencapsulation.getField(nacosConfigurationSource, UpdateHandler.class);
+ UpdateHandler updateHandler = nacosConfigurationSource.getUpdateHandler();
Map<String, Object> updateItems = new HashMap<>();
updateItems.put("nacosTestKey", "testValue");
- udateHandler.handle(ConfigurationAction.SET, updateItems);
+ updateHandler.handle(ConfigurationAction.SET, updateItems);
}
@@ -56,12 +54,12 @@
public void testDelete() throws Exception {
NacosConfigurationSourceImpl nacosConfigurationSource = new NacosConfigurationSourceImpl();
nacosConfigurationSource.addUpdateListener(result -> Assertions.assertFalse(result.getDeleted().isEmpty()));
- UpdateHandler udateHandler = Deencapsulation.getField(nacosConfigurationSource, UpdateHandler.class);
+ UpdateHandler updateHandler = nacosConfigurationSource.getUpdateHandler();
Map<String, Object> deleteItems = new HashMap<>();
deleteItems.put("nacosTestKey", "testValue");
nacosConfigurationSource.getCurrentData().put("nacosTestKey", "testValue");
- udateHandler.handle(ConfigurationAction.DELETE, deleteItems);
+ updateHandler.handle(ConfigurationAction.DELETE, deleteItems);
Assertions.assertTrue(nacosConfigurationSource.getCurrentData().isEmpty());
}
diff --git a/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/client/NacosClientTest.java b/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/client/NacosClientTest.java
index 4b82a8f..3a49bbc 100644
--- a/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/client/NacosClientTest.java
+++ b/dynamic-config/config-nacos/src/test/java/org/apache/servicecomb/config/nacos/client/NacosClientTest.java
@@ -23,7 +23,6 @@
import org.apache.servicecomb.config.ConfigUtil;
import org.apache.servicecomb.config.nacos.archaius.sources.NacosConfigurationSourceImpl;
import org.apache.servicecomb.config.nacos.archaius.sources.NacosConfigurationSourceImpl.UpdateHandler;
-import mockit.Deencapsulation;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -35,20 +34,6 @@
}
@Test
- public void refreshNacosConfig() {
-
- NacosConfigurationSourceImpl impl = new NacosConfigurationSourceImpl();
- UpdateHandler updateHandler = impl.new UpdateHandler();
- NacosClient nacosClient = new NacosClient(updateHandler);
- //before open this code,you need to start nacos-console first
- //and make sure the address is 127.0.0.1:8848
- //nacosClient.refreshNacosConfig();
- Map<String, Object> originMap = Deencapsulation.getField(nacosClient, "originalConfigMap");
- originMap.put("nacos", "12345");
- Assertions.assertEquals(1, originMap.size());
- }
-
- @Test
public void testCompareChangedConfig() {
boolean status = true;
Map<String, Object> before = new HashMap<>();