This is an automated email from the ASF dual-hosted git repository.
sunnianjun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere-elasticjob.git
The following commit(s) were added to refs/heads/master by this push:
new d413b44e7 Add ReflectionUtils into test module (#2334)
d413b44e7 is described below
commit d413b44e7bd399601cc5a6294e636293ba593056
Author: Liang Zhang <[email protected]>
AuthorDate: Sun Oct 29 13:23:46 2023 +0800
Add ReflectionUtils into test module (#2334)
* Add ReflectionUtils into test module
* Add ReflectionUtils into test module
* Add ReflectionUtils into test module
* Add ReflectionUtils into test module
---
.../fixture/DingtalkInternalController.java | 9 ++-
ecosystem/error-handler/type/email/pom.xml | 7 +++
.../handler/email/EmailJobErrorHandlerTest.java | 18 ++----
.../DistributeOnceElasticJobListenerTest.java | 2 +-
.../kernel/integrate/BaseIntegrateTest.java | 2 +-
.../annotation/integrate/BaseAnnotationTest.java | 2 +-
.../internal/config/ConfigurationServiceTest.java | 2 +-
.../config/RescheduleListenerManagerTest.java | 2 +-
.../election/ElectionListenerManagerTest.java | 2 +-
.../internal/election/LeaderServiceTest.java | 2 +-
.../kernel/internal/executor/JobFacadeTest.java | 2 +-
.../error/handler/JobErrorHandlerReloaderTest.java | 20 ++-----
.../threadpool/ExecutorServiceReloaderTest.java | 20 ++-----
.../failover/FailoverListenerManagerTest.java | 2 +-
.../internal/failover/FailoverServiceTest.java | 2 +-
.../guarantee/GuaranteeListenerManagerTest.java | 2 +-
.../internal/guarantee/GuaranteeServiceTest.java | 2 +-
.../internal/instance/InstanceServiceTest.java | 2 +-
.../instance/ShutdownListenerManagerTest.java | 2 +-
.../internal/listener/ListenerManagerTest.java | 2 +-
.../RegistryCenterConnectionStateListenerTest.java | 2 +-
.../internal/reconcile/ReconcileServiceTest.java | 2 +-
.../kernel/internal/schedule/JobRegistryTest.java | 2 +-
.../schedule/JobScheduleControllerTest.java | 2 +-
.../internal/schedule/SchedulerFacadeTest.java | 2 +-
.../kernel/internal/server/ServerServiceTest.java | 2 +-
.../kernel/internal/setup/SetUpFacadeTest.java | 2 +-
.../sharding/ExecutionContextServiceTest.java | 2 +-
.../internal/sharding/ExecutionServiceTest.java | 2 +-
.../MonitorExecutionListenerManagerTest.java | 2 +-
.../sharding/ShardingListenerManagerTest.java | 2 +-
.../internal/sharding/ShardingServiceTest.java | 2 +-
.../internal/snapshot/BaseSnapshotServiceTest.java | 2 +-
.../snapshot/SnapshotServiceDisableTest.java | 15 ++---
.../internal/storage/JobNodeStorageTest.java | 2 +-
.../trigger/TriggerListenerManagerTest.java | 2 +-
.../zookeeper/ZookeeperElectionServiceTest.java | 13 +----
.../ZookeeperRegistryCenterForAuthTest.java | 29 ++++-----
.../ZookeeperRegistryCenterListenerTest.java | 10 ++--
.../ZookeeperRegistryCenterModifyTest.java | 48 +++++++--------
.../ZookeeperRegistryCenterQueryWithCacheTest.java | 4 +-
...okeeperRegistryCenterQueryWithoutCacheTest.java | 4 +-
.../ZookeeperRegistryCenterTransactionTest.java | 4 +-
.../ZookeeperRegistryCenterWatchTest.java | 4 +-
.../env/RegistryCenterEnvironmentPreparer.java | 37 ++++++++++++
.../util/ZookeeperRegistryCenterTestUtil.java | 68 ----------------------
.../restful/NettyRestfulServiceConfiguration.java | 17 +++---
.../spring/boot/job/ElasticJobSpringBootTest.java | 30 ++++------
.../elasticjob/test}/util/ReflectionUtils.java | 37 ++++++++++--
49 files changed, 202 insertions(+), 252 deletions(-)
diff --git
a/ecosystem/error-handler/type/dingtalk/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/dingtalk/fixture/DingtalkInternalController.java
b/ecosystem/error-handler/type/dingtalk/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/dingtalk/fixture/DingtalkInternalController.java
index 1dd005ba9..08572cacf 100644
---
a/ecosystem/error-handler/type/dingtalk/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/dingtalk/fixture/DingtalkInternalController.java
+++
b/ecosystem/error-handler/type/dingtalk/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/dingtalk/fixture/DingtalkInternalController.java
@@ -31,7 +31,6 @@ import
org.apache.shardingsphere.elasticjob.restful.annotation.RequestBody;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
-import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
@@ -53,7 +52,7 @@ public final class DingtalkInternalController implements
RestfulController {
* @param timestamp timestamp
* @param sign sign
* @param body body
- * @return send Result
+ * @return send result
*/
@SneakyThrows
@Mapping(method = Http.POST, path = "/send")
@@ -64,7 +63,7 @@ public final class DingtalkInternalController implements
RestfulController {
if (!ACCESS_TOKEN.equals(accessToken)) {
return GsonFactory.getGson().toJson(ImmutableMap.of("errcode",
300001, "errmsg", "token is not exist"));
}
- String content =
Map.class.cast(body.get("text")).get("content").toString();
+ String content = ((Map) body.get("text")).get("content").toString();
if (!content.startsWith(KEYWORD)) {
return GsonFactory.getGson().toJson(ImmutableMap.of("errcode",
310000, "errmsg", "keywords not in content, more:
[https://ding-doc.dingtalk.com/doc#/serverapi2/qf2nxq]"));
}
@@ -78,11 +77,11 @@ public final class DingtalkInternalController implements
RestfulController {
return GsonFactory.getGson().toJson(ImmutableMap.of("errcode", 0,
"errmsg", "ok"));
}
- private String sign(final Long timestamp) throws NoSuchAlgorithmException,
UnsupportedEncodingException, InvalidKeyException {
+ private String sign(final Long timestamp) throws NoSuchAlgorithmException,
InvalidKeyException {
String stringToSign = timestamp + "\n" + SECRET;
Mac mac = Mac.getInstance("HmacSHA256");
mac.init(new SecretKeySpec(SECRET.getBytes(StandardCharsets.UTF_8),
"HmacSHA256"));
byte[] signData =
mac.doFinal(stringToSign.getBytes(StandardCharsets.UTF_8));
- return new String(Base64.getEncoder().encode(signData),
StandardCharsets.UTF_8.name());
+ return new String(Base64.getEncoder().encode(signData),
StandardCharsets.UTF_8);
}
}
diff --git a/ecosystem/error-handler/type/email/pom.xml
b/ecosystem/error-handler/type/email/pom.xml
index 82932ddd9..78853f3ca 100644
--- a/ecosystem/error-handler/type/email/pom.xml
+++ b/ecosystem/error-handler/type/email/pom.xml
@@ -32,6 +32,13 @@
<version>${project.parent.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.shardingsphere.elasticjob</groupId>
+ <artifactId>elasticjob-test-util</artifactId>
+ <version>${project.parent.version}</version>
+ <scope>test</scope>
+ </dependency>
+
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
diff --git
a/ecosystem/error-handler/type/email/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/email/EmailJobErrorHandlerTest.java
b/ecosystem/error-handler/type/email/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/email/EmailJobErrorHandlerTest.java
index 78a1cf359..3c216f262 100644
---
a/ecosystem/error-handler/type/email/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/email/EmailJobErrorHandlerTest.java
+++
b/ecosystem/error-handler/type/email/src/test/java/org/apache/shardingsphere/elasticjob/error/handler/email/EmailJobErrorHandlerTest.java
@@ -20,8 +20,8 @@ package
org.apache.shardingsphere.elasticjob.error.handler.email;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.LoggingEvent;
import ch.qos.logback.core.read.ListAppender;
-import lombok.SneakyThrows;
import org.apache.shardingsphere.elasticjob.error.handler.JobErrorHandler;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
@@ -33,9 +33,9 @@ import org.slf4j.LoggerFactory;
import javax.mail.Address;
import javax.mail.Message;
+import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
-import java.lang.reflect.Field;
import java.util.List;
import java.util.Properties;
@@ -81,11 +81,10 @@ class EmailJobErrorHandlerTest {
}
@Test
- @SneakyThrows
- void assertHandleExceptionSucceedInSendingEmail() {
+ void assertHandleExceptionSucceedInSendingEmail() throws
MessagingException {
EmailJobErrorHandler emailJobErrorHandler =
getEmailJobErrorHandler(createConfigurationProperties());
setUpMockSession(session);
- setFieldValue(emailJobErrorHandler, "session", session);
+ ReflectionUtils.setFieldValue(emailJobErrorHandler, "session",
session);
Throwable cause = new RuntimeException("test");
String jobName = "test_job";
when(session.getTransport()).thenReturn(transport);
@@ -102,17 +101,10 @@ class EmailJobErrorHandlerTest {
private void setUpMockSession(final Session session) {
Properties props = new Properties();
- setFieldValue(session, "props", props);
+ ReflectionUtils.setFieldValue(session, "props", props);
when(session.getProperties()).thenReturn(props);
}
- @SneakyThrows
- private void setFieldValue(final Object target, final String fieldName,
final Object fieldValue) {
- Field field = target.getClass().getDeclaredField(fieldName);
- field.setAccessible(true);
- field.set(target, fieldValue);
- }
-
private Properties createConfigurationProperties() {
Properties result = new Properties();
result.setProperty(EmailPropertiesConstants.HOST, "localhost");
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/api/listener/DistributeOnceElasticJobListenerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/api/listener/DistributeOnceElasticJobListenerTest.java
index eebcfcf16..8b4b57f30 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/api/listener/DistributeOnceElasticJobListenerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/api/listener/DistributeOnceElasticJobListenerTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
import
org.apache.shardingsphere.elasticjob.kernel.api.listener.fixture.ElasticJobListenerCaller;
import
org.apache.shardingsphere.elasticjob.kernel.api.listener.fixture.TestDistributeOnceElasticJobListener;
import
org.apache.shardingsphere.elasticjob.kernel.internal.guarantee.GuaranteeService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/integrate/BaseIntegrateTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/integrate/BaseIntegrateTest.java
index 55b803da2..3a8b340c6 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/integrate/BaseIntegrateTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/integrate/BaseIntegrateTest.java
@@ -26,7 +26,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.OneOffJobB
import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.ScheduleJobBootstrap;
import
org.apache.shardingsphere.elasticjob.kernel.internal.election.LeaderService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
index 3b729764c..483bf963c 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
@@ -27,7 +27,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.ScheduleJo
import
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.JobAnnotationBuilder;
import
org.apache.shardingsphere.elasticjob.kernel.internal.election.LeaderService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/ConfigurationServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/ConfigurationServiceTest.java
index 3b445d3ee..62d8c8e15 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/ConfigurationServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/ConfigurationServiceTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.infra.exception.JobExecutionEnvironm
import org.apache.shardingsphere.elasticjob.infra.yaml.YamlEngine;
import org.apache.shardingsphere.elasticjob.kernel.fixture.YamlConstants;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/RescheduleListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/RescheduleListenerManagerTest.java
index dd2006808..a59224e5f 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/RescheduleListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/config/RescheduleListenerManagerTest.java
@@ -22,7 +22,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.fixture.YamlConstants;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.junit.jupiter.api.BeforeEach;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/ElectionListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/ElectionListenerManagerTest.java
index eca460720..448ec37ce 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/ElectionListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/ElectionListenerManagerTest.java
@@ -23,7 +23,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobSchedule
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/LeaderServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/LeaderServiceTest.java
index d5729780c..4b37afff8 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/LeaderServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/election/LeaderServiceTest.java
@@ -23,7 +23,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/JobFacadeTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/JobFacadeTest.java
index 2ab96dba5..b84c0191d 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/JobFacadeTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/JobFacadeTest.java
@@ -28,7 +28,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.failover.FailoverSer
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ExecutionContextService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ExecutionService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.tracing.JobTracingEventBus;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/error/handler/JobErrorHandlerReloaderTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/error/handler/JobErrorHandlerReloaderTest.java
index 741b22113..cbf089926 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/error/handler/JobErrorHandlerReloaderTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/error/handler/JobErrorHandlerReloaderTest.java
@@ -17,17 +17,16 @@
package
org.apache.shardingsphere.elasticjob.kernel.internal.executor.error.handler;
-import lombok.SneakyThrows;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.error.handler.JobErrorHandler;
import
org.apache.shardingsphere.elasticjob.kernel.internal.executor.error.handler.general.IgnoreJobErrorHandler;
import
org.apache.shardingsphere.elasticjob.kernel.internal.executor.error.handler.general.LogJobErrorHandler;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import java.lang.reflect.Field;
import java.util.Properties;
import static org.hamcrest.CoreMatchers.is;
@@ -59,8 +58,8 @@ class JobErrorHandlerReloaderTest {
JobConfiguration jobConfig = JobConfiguration.newBuilder("job",
1).jobErrorHandlerType("IGNORE").build();
try (JobErrorHandlerReloader jobErrorHandlerReloader = new
JobErrorHandlerReloader(jobConfig)) {
when(jobErrorHandler.getType()).thenReturn("mock");
- setField(jobErrorHandlerReloader, "jobErrorHandler",
jobErrorHandler);
- setField(jobErrorHandlerReloader, "props", new Properties());
+ ReflectionUtils.setFieldValue(jobErrorHandlerReloader,
"jobErrorHandler", jobErrorHandler);
+ ReflectionUtils.setFieldValue(jobErrorHandlerReloader, "props",
new Properties());
String newJobErrorHandlerType = "LOG";
JobConfiguration newJobConfig = JobConfiguration.newBuilder("job",
1).jobErrorHandlerType(newJobErrorHandlerType).build();
jobErrorHandlerReloader.reloadIfNecessary(newJobConfig);
@@ -86,20 +85,9 @@ class JobErrorHandlerReloaderTest {
void assertShutdown() {
JobConfiguration jobConfig = JobConfiguration.newBuilder("job",
1).jobErrorHandlerType("IGNORE").build();
try (JobErrorHandlerReloader jobErrorHandlerReloader = new
JobErrorHandlerReloader(jobConfig)) {
- setField(jobErrorHandlerReloader, "jobErrorHandler",
jobErrorHandler);
+ ReflectionUtils.setFieldValue(jobErrorHandlerReloader,
"jobErrorHandler", jobErrorHandler);
jobErrorHandlerReloader.close();
verify(jobErrorHandler).close();
}
}
-
- @SneakyThrows
- private void setField(final Object target, final String fieldName, final
Object value) {
- Field field = target.getClass().getDeclaredField(fieldName);
- boolean originAccessible = field.isAccessible();
- if (!originAccessible) {
- field.setAccessible(true);
- }
- field.set(target, value);
- field.setAccessible(originAccessible);
- }
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/threadpool/ExecutorServiceReloaderTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/threadpool/ExecutorServiceReloaderTest.java
index e2bc5e5cd..dff7117bf 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/threadpool/ExecutorServiceReloaderTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/executor/threadpool/ExecutorServiceReloaderTest.java
@@ -17,14 +17,13 @@
package
org.apache.shardingsphere.elasticjob.kernel.internal.executor.threadpool;
-import lombok.SneakyThrows;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import java.lang.reflect.Field;
import java.util.concurrent.ExecutorService;
import static org.hamcrest.CoreMatchers.is;
@@ -54,8 +53,8 @@ class ExecutorServiceReloaderTest {
@Test
void assertReload() {
ExecutorServiceReloader executorServiceReloader = new
ExecutorServiceReloader(JobConfiguration.newBuilder("job",
1).jobExecutorThreadPoolSizeProviderType("SINGLE_THREAD").build());
- setField(executorServiceReloader,
"jobExecutorThreadPoolSizeProviderType", "mock");
- setField(executorServiceReloader, "executorService",
mockExecutorService);
+ ReflectionUtils.setFieldValue(executorServiceReloader,
"jobExecutorThreadPoolSizeProviderType", "mock");
+ ReflectionUtils.setFieldValue(executorServiceReloader,
"executorService", mockExecutorService);
JobConfiguration jobConfig = JobConfiguration.newBuilder("job",
1).build();
executorServiceReloader.reloadIfNecessary(jobConfig);
verify(mockExecutorService).shutdown();
@@ -80,19 +79,8 @@ class ExecutorServiceReloaderTest {
@Test
void assertShutdown() {
ExecutorServiceReloader executorServiceReloader = new
ExecutorServiceReloader(JobConfiguration.newBuilder("job",
1).jobExecutorThreadPoolSizeProviderType("SINGLE_THREAD").build());
- setField(executorServiceReloader, "executorService",
mockExecutorService);
+ ReflectionUtils.setFieldValue(executorServiceReloader,
"executorService", mockExecutorService);
executorServiceReloader.close();
verify(mockExecutorService).shutdown();
}
-
- @SneakyThrows
- private void setField(final Object target, final String fieldName, final
Object value) {
- Field field = target.getClass().getDeclaredField(fieldName);
- boolean originAccessible = field.isAccessible();
- if (!originAccessible) {
- field.setAccessible(true);
- }
- field.set(target, value);
- field.setAccessible(originAccessible);
- }
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverListenerManagerTest.java
index ed83b72c7..a5dfafa4c 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverListenerManagerTest.java
@@ -28,7 +28,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobSchedule
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ExecutionService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
import
org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEventListener;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverServiceTest.java
index 700d42121..5d2c1a0a0 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/failover/FailoverServiceTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeListenerManagerTest.java
index b51f851ea..8de42c183 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeListenerManagerTest.java
@@ -20,7 +20,7 @@ package
org.apache.shardingsphere.elasticjob.kernel.internal.guarantee;
import org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener;
import
org.apache.shardingsphere.elasticjob.kernel.api.listener.AbstractDistributeOnceElasticJobListener;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
import
org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEventListener;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeServiceTest.java
index b57d47595..0db9a2729 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/guarantee/GuaranteeServiceTest.java
@@ -22,7 +22,7 @@ import
org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
import
org.apache.shardingsphere.elasticjob.kernel.api.listener.AbstractDistributeOnceElasticJobListener;
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.ConfigurationService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/InstanceServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/InstanceServiceTest.java
index 7fbb551c6..ae01059cd 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/InstanceServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/InstanceServiceTest.java
@@ -21,7 +21,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/ShutdownListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/ShutdownListenerManagerTest.java
index d6bcf4146..da8c0f762 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/ShutdownListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/instance/ShutdownListenerManagerTest.java
@@ -22,7 +22,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.SchedulerFacade;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/ListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/ListenerManagerTest.java
index 3b24e005f..e952653c4 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/ListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/ListenerManagerTest.java
@@ -26,7 +26,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.MonitorExec
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingListenerManager;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
import
org.apache.shardingsphere.elasticjob.kernel.internal.trigger.TriggerListenerManager;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/RegistryCenterConnectionStateListenerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/RegistryCenterConnectionStateListenerTest.java
index 2eaacd699..ce5524139 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/RegistryCenterConnectionStateListenerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/listener/RegistryCenterConnectionStateListenerTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobSchedule
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ExecutionService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.listener.ConnectionStateChangedEventListener.State;
import org.junit.jupiter.api.BeforeEach;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/reconcile/ReconcileServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/reconcile/ReconcileServiceTest.java
index c086172ac..ea91034a7 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/reconcile/ReconcileServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/reconcile/ReconcileServiceTest.java
@@ -23,7 +23,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.ConfigurationService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobRegistryTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobRegistryTest.java
index c9e8f46c8..04e7fe28b 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobRegistryTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobRegistryTest.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.elasticjob.kernel.internal.schedule;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.Test;
import static org.hamcrest.CoreMatchers.is;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobScheduleControllerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobScheduleControllerTest.java
index 7638f6eae..b85551f92 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobScheduleControllerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/JobScheduleControllerTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.elasticjob.kernel.internal.schedule;
import org.apache.shardingsphere.elasticjob.infra.exception.JobSystemException;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/SchedulerFacadeTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/SchedulerFacadeTest.java
index b97a253e8..a63e34cae 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/SchedulerFacadeTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/schedule/SchedulerFacadeTest.java
@@ -20,7 +20,7 @@ package
org.apache.shardingsphere.elasticjob.kernel.internal.schedule;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance;
import
org.apache.shardingsphere.elasticjob.kernel.internal.election.LeaderService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.ShardingService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/server/ServerServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/server/ServerServiceTest.java
index 5352f9f69..d808119bb 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/server/ServerServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/server/ServerServiceTest.java
@@ -21,7 +21,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/setup/SetUpFacadeTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/setup/SetUpFacadeTest.java
index 0a9393b62..c61434c7e 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/setup/SetUpFacadeTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/setup/SetUpFacadeTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.listener.ListenerMan
import
org.apache.shardingsphere.elasticjob.kernel.internal.reconcile.ReconcileService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionContextServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionContextServiceTest.java
index 08d77ff14..04f2c930a 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionContextServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionContextServiceTest.java
@@ -23,7 +23,7 @@ import
org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.ConfigurationService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionServiceTest.java
index b67b69599..e66d54fdc 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ExecutionServiceTest.java
@@ -22,7 +22,7 @@ import
org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.ConfigurationService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/MonitorExecutionListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/MonitorExecutionListenerManagerTest.java
index b49217583..48101f36c 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/MonitorExecutionListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/MonitorExecutionListenerManagerTest.java
@@ -19,7 +19,7 @@ package
org.apache.shardingsphere.elasticjob.kernel.internal.sharding;
import org.apache.shardingsphere.elasticjob.kernel.fixture.YamlConstants;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
import org.junit.jupiter.api.BeforeEach;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingListenerManagerTest.java
index 200651225..06f8f75f3 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingListenerManagerTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.config.Configuration
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent.Type;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingServiceTest.java
index df8c4f550..f0d9c9eaa 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/sharding/ShardingServiceTest.java
@@ -26,7 +26,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerService;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
index abf59a876..023a62c14 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.elasticjob.api.ElasticJob;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.ScheduleJobBootstrap;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
index 62c5a02fb..1024fa4bd 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
@@ -17,12 +17,11 @@
package org.apache.shardingsphere.elasticjob.kernel.internal.snapshot;
-import lombok.SneakyThrows;
import org.apache.shardingsphere.elasticjob.kernel.fixture.job.DetailedFooJob;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.Test;
import java.io.IOException;
-import java.lang.reflect.Field;
import java.net.ServerSocket;
import static org.junit.jupiter.api.Assertions.assertNull;
@@ -41,21 +40,15 @@ class SnapshotServiceDisableTest extends
BaseSnapshotServiceTest {
@Test
void assertPortInvalid() {
- assertThrows(IllegalArgumentException.class, () -> {
- SnapshotService snapshotService = new
SnapshotService(getREG_CENTER(), -1);
- snapshotService.listen();
- });
+ assertThrows(IllegalArgumentException.class, () -> new
SnapshotService(getREG_CENTER(), -1).listen());
}
@Test
- @SneakyThrows
- void assertListenException() {
+ void assertListenException() throws IOException {
ServerSocket serverSocket = new ServerSocket(9898);
SnapshotService snapshotService = new SnapshotService(getREG_CENTER(),
9898);
snapshotService.listen();
serverSocket.close();
- Field field =
snapshotService.getClass().getDeclaredField("serverSocket");
- field.setAccessible(true);
- assertNull(field.get(snapshotService));
+ assertNull(ReflectionUtils.getFieldValue(snapshotService,
"serverSocket"));
}
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/storage/JobNodeStorageTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/storage/JobNodeStorageTest.java
index 2d43bcb62..33e69ac90 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/storage/JobNodeStorageTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/storage/JobNodeStorageTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.elasticjob.kernel.internal.storage;
import
org.apache.shardingsphere.elasticjob.kernel.internal.listener.ListenerNotifierManager;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.base.transaction.TransactionOperation;
import org.apache.shardingsphere.elasticjob.reg.exception.RegException;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/trigger/TriggerListenerManagerTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/trigger/TriggerListenerManagerTest.java
index bb070e647..811bbce8e 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/trigger/TriggerListenerManagerTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/trigger/TriggerListenerManagerTest.java
@@ -21,7 +21,7 @@ import
org.apache.shardingsphere.elasticjob.kernel.internal.sharding.JobInstance
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobScheduleController;
import
org.apache.shardingsphere.elasticjob.kernel.internal.storage.JobNodeStorage;
-import org.apache.shardingsphere.elasticjob.kernel.util.ReflectionUtils;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
import org.junit.jupiter.api.BeforeEach;
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperElectionServiceTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperElectionServiceTest.java
index 131479fd0..50cecb141 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperElectionServiceTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperElectionServiceTest.java
@@ -25,6 +25,7 @@ import org.apache.curator.retry.RetryOneTime;
import org.apache.curator.test.KillSession;
import org.apache.shardingsphere.elasticjob.reg.base.ElectionCandidate;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
@@ -32,7 +33,6 @@ import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import java.lang.reflect.Field;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
@@ -74,7 +74,7 @@ class ZookeeperElectionServiceTest {
KillSession.kill(client.getZookeeperClient().getZooKeeper());
service.stop();
blockUntilCondition(() -> hasLeadership(anotherService));
- ((CountDownLatch) getFieldValue(anotherService,
"leaderLatch")).countDown();
+ ((CountDownLatch) ReflectionUtils.getFieldValue(anotherService,
"leaderLatch")).countDown();
blockUntilCondition(() -> !hasLeadership(anotherService));
anotherService.stop();
verify(anotherElectionCandidate, atLeastOnce()).startLeadership();
@@ -87,13 +87,6 @@ class ZookeeperElectionServiceTest {
@SneakyThrows
private boolean hasLeadership(final ZookeeperElectionService
zookeeperElectionService) {
- return ((LeaderSelector) getFieldValue(zookeeperElectionService,
"leaderSelector")).hasLeadership();
- }
-
- @SneakyThrows
- private Object getFieldValue(final Object target, final String fieldName) {
- Field field = target.getClass().getDeclaredField(fieldName);
- field.setAccessible(true);
- return field.get(target);
+ return ((LeaderSelector)
ReflectionUtils.getFieldValue(zookeeperElectionService,
"leaderSelector")).hasLeadership();
}
}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterForAuthTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterForAuthTest.java
index 34fa53a61..95592c85c 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterForAuthTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterForAuthTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.elasticjob.reg.zookeeper;
import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.CuratorFrameworkFactory;
import org.apache.curator.retry.RetryOneTime;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.apache.zookeeper.KeeperException.NoAuthException;
import org.junit.jupiter.api.AfterAll;
@@ -49,7 +49,7 @@ class ZookeeperRegistryCenterForAuthTest {
ZOOKEEPER_CONFIGURATION.setConnectionTimeoutMilliseconds(5000);
zkRegCenter = new ZookeeperRegistryCenter(ZOOKEEPER_CONFIGURATION);
zkRegCenter.init();
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
}
@AfterAll
@@ -59,22 +59,25 @@ class ZookeeperRegistryCenterForAuthTest {
@Test
void assertInitWithDigestSuccess() throws Exception {
- CuratorFramework client = CuratorFrameworkFactory.builder()
- .connectString(EMBED_TESTING_SERVER.getConnectionString())
- .retryPolicy(new RetryOneTime(2000))
- .authorization("digest", "digest:password".getBytes()).build();
- client.start();
- client.blockUntilConnected();
- assertThat(client.getData().forPath("/" +
ZookeeperRegistryCenterForAuthTest.class.getName() + "/test/deep/nested"),
is("deepNested".getBytes()));
+ try (
+ CuratorFramework client = CuratorFrameworkFactory.builder()
+
.connectString(EMBED_TESTING_SERVER.getConnectionString())
+ .retryPolicy(new RetryOneTime(2000))
+ .authorization("digest",
"digest:password".getBytes()).build()) {
+ client.start();
+ client.blockUntilConnected();
+ assertThat(client.getData().forPath("/" +
ZookeeperRegistryCenterForAuthTest.class.getName() + "/test/deep/nested"),
is("deepNested".getBytes()));
+ }
}
@Test
void assertInitWithDigestFailure() {
assertThrows(NoAuthException.class, () -> {
- CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000));
- client.start();
- client.blockUntilConnected();
- client.getData().forPath("/" +
ZookeeperRegistryCenterForAuthTest.class.getName() + "/test/deep/nested");
+ try (CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000))) {
+ client.start();
+ client.blockUntilConnected();
+ client.getData().forPath("/" +
ZookeeperRegistryCenterForAuthTest.class.getName() + "/test/deep/nested");
+ }
});
}
}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterListenerTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterListenerTest.java
index 1b1657b41..205861e81 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterListenerTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterListenerTest.java
@@ -22,7 +22,7 @@ import org.apache.curator.framework.listen.Listenable;
import org.apache.curator.framework.recipes.cache.CuratorCache;
import org.apache.curator.framework.recipes.cache.CuratorCacheListener;
import org.apache.curator.framework.state.ConnectionStateListener;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -66,8 +66,8 @@ class ZookeeperRegistryCenterListenerTest {
@BeforeEach
void setUp() {
regCenter = new ZookeeperRegistryCenter(null);
- ZookeeperRegistryCenterTestUtil.setFieldValue(regCenter, "caches",
caches);
- ZookeeperRegistryCenterTestUtil.setFieldValue(regCenter, "client",
client);
+ ReflectionUtils.setFieldValue(regCenter, "caches", caches);
+ ReflectionUtils.setFieldValue(regCenter, "client", client);
}
@Test
@@ -140,11 +140,11 @@ class ZookeeperRegistryCenterListenerTest {
@SuppressWarnings("unchecked")
private Map<String, List<ConnectionStateListener>> getConnStateListeners()
{
- return (Map<String, List<ConnectionStateListener>>)
ZookeeperRegistryCenterTestUtil.getFieldValue(regCenter, "connStateListeners");
+ return (Map<String, List<ConnectionStateListener>>)
ReflectionUtils.getFieldValue(regCenter, "connStateListeners");
}
@SuppressWarnings("unchecked")
private Map<String, List<CuratorCacheListener>> getDataListeners() {
- return (Map<String, List<CuratorCacheListener>>)
ZookeeperRegistryCenterTestUtil.getFieldValue(regCenter, "dataListeners");
+ return (Map<String, List<CuratorCacheListener>>)
ReflectionUtils.getFieldValue(regCenter, "dataListeners");
}
}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterModifyTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterModifyTest.java
index 10eda57b7..d4a1c9c5f 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterModifyTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterModifyTest.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.elasticjob.reg.zookeeper;
import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.CuratorFrameworkFactory;
import org.apache.curator.retry.RetryOneTime;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -49,7 +49,7 @@ class ZookeeperRegistryCenterModifyTest {
zkRegCenter = new ZookeeperRegistryCenter(ZOOKEEPER_CONFIGURATION);
ZOOKEEPER_CONFIGURATION.setConnectionTimeoutMilliseconds(30000);
zkRegCenter.init();
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
}
@AfterAll
@@ -91,35 +91,37 @@ class ZookeeperRegistryCenterModifyTest {
void assertPersistSequential() throws Exception {
assertThat(zkRegCenter.persistSequential("/sequential/test_sequential",
"test_value"), startsWith("/sequential/test_sequential"));
assertThat(zkRegCenter.persistSequential("/sequential/test_sequential",
"test_value"), startsWith("/sequential/test_sequential"));
- CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000));
- client.start();
- client.blockUntilConnected();
- List<String> actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
- assertThat(actual.size(), is(2));
- for (String each : actual) {
- assertThat(each, startsWith("test_sequential"));
- assertThat(zkRegCenter.get("/sequential/" + each),
startsWith("test_value"));
+ try (CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000))) {
+ client.start();
+ client.blockUntilConnected();
+ List<String> actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
+ assertThat(actual.size(), is(2));
+ for (String each : actual) {
+ assertThat(each, startsWith("test_sequential"));
+ assertThat(zkRegCenter.get("/sequential/" + each),
startsWith("test_value"));
+ }
+ zkRegCenter.remove("/sequential");
+ assertFalse(zkRegCenter.isExisted("/sequential"));
}
- zkRegCenter.remove("/sequential");
- assertFalse(zkRegCenter.isExisted("/sequential"));
}
@Test
void assertPersistEphemeralSequential() throws Exception {
zkRegCenter.persistEphemeralSequential("/sequential/test_ephemeral_sequential");
zkRegCenter.persistEphemeralSequential("/sequential/test_ephemeral_sequential");
- CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000));
- client.start();
- client.blockUntilConnected();
- List<String> actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
- assertThat(actual.size(), is(2));
- for (String each : actual) {
- assertThat(each, startsWith("test_ephemeral_sequential"));
+ try (CuratorFramework client =
CuratorFrameworkFactory.newClient(EMBED_TESTING_SERVER.getConnectionString(),
new RetryOneTime(2000))) {
+ client.start();
+ client.blockUntilConnected();
+ List<String> actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
+ assertThat(actual.size(), is(2));
+ for (String each : actual) {
+ assertThat(each, startsWith("test_ephemeral_sequential"));
+ }
+ zkRegCenter.close();
+ actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
+ assertTrue(actual.isEmpty());
+ zkRegCenter.init();
}
- zkRegCenter.close();
- actual = client.getChildren().forPath("/" +
ZookeeperRegistryCenterModifyTest.class.getName() + "/sequential");
- assertTrue(actual.isEmpty());
- zkRegCenter.init();
}
@Test
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithCacheTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithCacheTest.java
index 5a2730690..59eb61cf8 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithCacheTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithCacheTest.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.elasticjob.reg.zookeeper;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -42,7 +42,7 @@ class ZookeeperRegistryCenterQueryWithCacheTest {
zkRegCenter = new ZookeeperRegistryCenter(ZOOKEEPER_CONFIGURATION);
ZOOKEEPER_CONFIGURATION.setConnectionTimeoutMilliseconds(30000);
zkRegCenter.init();
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
zkRegCenter.addCacheData("/test");
}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithoutCacheTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithoutCacheTest.java
index 99fa81960..c370073a8 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithoutCacheTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterQueryWithoutCacheTest.java
@@ -17,7 +17,7 @@
package org.apache.shardingsphere.elasticjob.reg.zookeeper;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -47,7 +47,7 @@ class ZookeeperRegistryCenterQueryWithoutCacheTest {
ZOOKEEPER_CONFIGURATION.setConnectionTimeoutMilliseconds(30000);
zkRegCenter = new ZookeeperRegistryCenter(ZOOKEEPER_CONFIGURATION);
zkRegCenter.init();
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
zkRegCenter.addCacheData("/other");
}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterTransactionTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterTransactionTest.java
index d52072810..b08795a04 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterTransactionTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterTransactionTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.elasticjob.reg.zookeeper;
import
org.apache.shardingsphere.elasticjob.reg.base.transaction.TransactionOperation;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.apache.zookeeper.KeeperException;
import org.junit.jupiter.api.BeforeAll;
@@ -51,7 +51,7 @@ class ZookeeperRegistryCenterTransactionTest {
@BeforeEach
void setup() {
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
}
@Test
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterWatchTest.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterWatchTest.java
index 8318bc4f9..1ead5e3f1 100644
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterWatchTest.java
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/ZookeeperRegistryCenterWatchTest.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.elasticjob.reg.zookeeper;
import org.apache.curator.utils.ThreadUtils;
import org.apache.shardingsphere.elasticjob.reg.listener.DataChangedEvent;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.util.ZookeeperRegistryCenterTestUtil;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.env.RegistryCenterEnvironmentPreparer;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -49,7 +49,7 @@ class ZookeeperRegistryCenterWatchTest {
zkRegCenter = new ZookeeperRegistryCenter(ZOOKEEPER_CONFIGURATION);
ZOOKEEPER_CONFIGURATION.setConnectionTimeoutMilliseconds(30000);
zkRegCenter.init();
- ZookeeperRegistryCenterTestUtil.persist(zkRegCenter);
+ RegistryCenterEnvironmentPreparer.persist(zkRegCenter);
}
@AfterAll
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/env/RegistryCenterEnvironmentPreparer.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/env/RegistryCenterEnvironmentPreparer.java
new file mode 100644
index 000000000..1e86d4e93
--- /dev/null
+++
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/env/RegistryCenterEnvironmentPreparer.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.elasticjob.reg.zookeeper.env;
+
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
+
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class RegistryCenterEnvironmentPreparer {
+
+ /**
+ * Persist the data to registry center.
+ *
+ * @param registryCenter ZooKeeper registry center
+ */
+ public static void persist(final ZookeeperRegistryCenter registryCenter) {
+ registryCenter.persist("/test", "test");
+ registryCenter.persist("/test/deep/nested", "deepNested");
+ registryCenter.persist("/test/child", "child");
+ }
+}
diff --git
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/util/ZookeeperRegistryCenterTestUtil.java
b/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/util/ZookeeperRegistryCenterTestUtil.java
deleted file mode 100644
index dc16f0dd9..000000000
---
a/registry-center/provider/zookeeper-curator/src/test/java/org/apache/shardingsphere/elasticjob/reg/zookeeper/util/ZookeeperRegistryCenterTestUtil.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.elasticjob.reg.zookeeper.util;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-import lombok.SneakyThrows;
-import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperRegistryCenter;
-
-import java.lang.reflect.Field;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class ZookeeperRegistryCenterTestUtil {
-
- /**
- * Persist the data to registry center.
- *
- * @param zookeeperRegistryCenter registry center
- */
- public static void persist(final ZookeeperRegistryCenter
zookeeperRegistryCenter) {
- zookeeperRegistryCenter.persist("/test", "test");
- zookeeperRegistryCenter.persist("/test/deep/nested", "deepNested");
- zookeeperRegistryCenter.persist("/test/child", "child");
- }
-
- /**
- * Set field value use reflection.
- *
- * @param target target object
- * @param fieldName field name
- * @param fieldValue field value
- */
- @SneakyThrows
- public static void setFieldValue(final Object target, final String
fieldName, final Object fieldValue) {
- Field field = target.getClass().getDeclaredField(fieldName);
- field.setAccessible(true);
- field.set(target, fieldValue);
- }
-
- /**
- * Get field value use reflection.
- *
- * @param target target object
- * @param fieldName field name
- * @return field value
- */
- @SneakyThrows
- public static Object getFieldValue(final Object target, final String
fieldName) {
- Field field = target.getClass().getDeclaredField(fieldName);
- field.setAccessible(true);
- return field.get(target);
- }
-}
diff --git
a/restful/src/main/java/org/apache/shardingsphere/elasticjob/restful/NettyRestfulServiceConfiguration.java
b/restful/src/main/java/org/apache/shardingsphere/elasticjob/restful/NettyRestfulServiceConfiguration.java
index 9a6878726..4b4414b1f 100644
---
a/restful/src/main/java/org/apache/shardingsphere/elasticjob/restful/NettyRestfulServiceConfiguration.java
+++
b/restful/src/main/java/org/apache/shardingsphere/elasticjob/restful/NettyRestfulServiceConfiguration.java
@@ -32,27 +32,26 @@ import java.util.Map;
/**
* Configuration for {@link NettyRestfulService}.
*/
-@Getter
@RequiredArgsConstructor
+@Getter
+@Setter
public final class NettyRestfulServiceConfiguration {
+ private final List<Filter> filterInstances = new LinkedList<>();
+
+ private final List<RestfulController> controllerInstances = new
LinkedList<>();
+
+ private final Map<Class<? extends Throwable>, ExceptionHandler<? extends
Throwable>> exceptionHandlers = new HashMap<>();
+
private final int port;
- @Setter
private String host;
/**
* If trailing slash sensitive, <code>/foo/bar</code> is not equals to
<code>/foo/bar/</code>.
*/
- @Setter
private boolean trailingSlashSensitive;
- private final List<Filter> filterInstances = new LinkedList<>();
-
- private final List<RestfulController> controllerInstances = new
LinkedList<>();
-
- private final Map<Class<? extends Throwable>, ExceptionHandler<? extends
Throwable>> exceptionHandlers = new HashMap<>();
-
/**
* Add instances of {@link Filter}.
*
diff --git
a/spring/boot-starter/src/test/java/org/apache/shardingsphere/elasticjob/spring/boot/job/ElasticJobSpringBootTest.java
b/spring/boot-starter/src/test/java/org/apache/shardingsphere/elasticjob/spring/boot/job/ElasticJobSpringBootTest.java
index 2cd365349..1937eacd0 100644
---
a/spring/boot-starter/src/test/java/org/apache/shardingsphere/elasticjob/spring/boot/job/ElasticJobSpringBootTest.java
+++
b/spring/boot-starter/src/test/java/org/apache/shardingsphere/elasticjob/spring/boot/job/ElasticJobSpringBootTest.java
@@ -28,6 +28,7 @@ import
org.apache.shardingsphere.elasticjob.spring.boot.job.fixture.job.impl.Cus
import
org.apache.shardingsphere.elasticjob.spring.boot.reg.ZookeeperProperties;
import
org.apache.shardingsphere.elasticjob.spring.boot.tracing.TracingProperties;
import org.apache.shardingsphere.elasticjob.test.util.EmbedTestingServer;
+import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.tracing.api.TracingConfiguration;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.BeforeAll;
@@ -39,7 +40,6 @@ import org.springframework.context.ApplicationContext;
import org.springframework.test.context.ActiveProfiles;
import javax.sql.DataSource;
-import java.lang.reflect.Field;
import java.sql.SQLException;
import java.util.Arrays;
import java.util.Collection;
@@ -147,36 +147,26 @@ class ElasticJobSpringBootTest {
}
@Test
- void assertOneOffJobBootstrapBeanName() throws NoSuchFieldException,
SecurityException, IllegalArgumentException, IllegalAccessException {
+ void assertOneOffJobBootstrapBeanName() {
assertNotNull(applicationContext);
- OneOffJobBootstrap customTestJobBootstrap =
- applicationContext.getBean("customTestJobBean",
OneOffJobBootstrap.class);
+ OneOffJobBootstrap customTestJobBootstrap =
applicationContext.getBean("customTestJobBean", OneOffJobBootstrap.class);
assertNotNull(customTestJobBootstrap);
- Field jobSchedulerField =
customTestJobBootstrap.getClass().getDeclaredField("jobScheduler");
- jobSchedulerField.setAccessible(true);
- Collection<JobExtraConfiguration> extraConfigurations =
- ((JobScheduler)
jobSchedulerField.get(customTestJobBootstrap)).getJobConfig().getExtraConfigurations();
- assertThat(extraConfigurations.size(), is(0));
- OneOffJobBootstrap printTestJobBootstrap =
- applicationContext.getBean("printTestJobBean",
OneOffJobBootstrap.class);
- jobSchedulerField =
printTestJobBootstrap.getClass().getDeclaredField("jobScheduler");
- jobSchedulerField.setAccessible(true);
- extraConfigurations =
- ((JobScheduler)
jobSchedulerField.get(printTestJobBootstrap)).getJobConfig().getExtraConfigurations();
- assertThat(extraConfigurations.size(), is(1));
+ Collection<JobExtraConfiguration> extraConfigs = ((JobScheduler)
ReflectionUtils.getFieldValue(customTestJobBootstrap,
"jobScheduler")).getJobConfig().getExtraConfigurations();
+ assertThat(extraConfigs.size(), is(0));
+ OneOffJobBootstrap printTestJobBootstrap =
applicationContext.getBean("printTestJobBean", OneOffJobBootstrap.class);
+ extraConfigs = ((JobScheduler)
ReflectionUtils.getFieldValue(printTestJobBootstrap,
"jobScheduler")).getJobConfig().getExtraConfigurations();
+ assertThat(extraConfigs.size(), is(1));
}
@Test
void assertDefaultBeanNameWithClassJob() {
assertNotNull(applicationContext);
-
assertNotNull(applicationContext.getBean("defaultBeanNameClassJobScheduleJobBootstrap",
- ScheduleJobBootstrap.class));
+
assertNotNull(applicationContext.getBean("defaultBeanNameClassJobScheduleJobBootstrap",
ScheduleJobBootstrap.class));
}
@Test
void assertDefaultBeanNameWithTypeJob() {
assertNotNull(applicationContext);
-
assertNotNull(applicationContext.getBean("defaultBeanNameTypeJobScheduleJobBootstrap",
- ScheduleJobBootstrap.class));
+
assertNotNull(applicationContext.getBean("defaultBeanNameTypeJobScheduleJobBootstrap",
ScheduleJobBootstrap.class));
}
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/util/ReflectionUtils.java
b/test/util/src/main/java/org/apache/shardingsphere/elasticjob/test/util/ReflectionUtils.java
similarity index 61%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/util/ReflectionUtils.java
rename to
test/util/src/main/java/org/apache/shardingsphere/elasticjob/test/util/ReflectionUtils.java
index cc93be2be..68e9e07d0 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/util/ReflectionUtils.java
+++
b/test/util/src/main/java/org/apache/shardingsphere/elasticjob/test/util/ReflectionUtils.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.util;
+package org.apache.shardingsphere.elasticjob.test.util;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
@@ -29,6 +29,25 @@ import java.lang.reflect.Field;
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class ReflectionUtils {
+ /**
+ * Get field value.
+ *
+ * @param target target object
+ * @param fieldName field name
+ * @return field value
+ */
+ @SneakyThrows(ReflectiveOperationException.class)
+ public static Object getFieldValue(final Object target, final String
fieldName) {
+ Field field = target.getClass().getDeclaredField(fieldName);
+ boolean originAccessible = field.isAccessible();
+ if (!originAccessible) {
+ field.setAccessible(true);
+ }
+ Object result = field.get(target);
+ field.setAccessible(originAccessible);
+ return result;
+ }
+
/**
* Set field value.
*
@@ -36,11 +55,15 @@ public final class ReflectionUtils {
* @param fieldName field name
* @param fieldValue field value
*/
- @SneakyThrows
+ @SneakyThrows(ReflectiveOperationException.class)
public static void setFieldValue(final Object target, final String
fieldName, final Object fieldValue) {
Field field = target.getClass().getDeclaredField(fieldName);
- field.setAccessible(true);
+ boolean originAccessible = field.isAccessible();
+ if (!originAccessible) {
+ field.setAccessible(true);
+ }
field.set(target, fieldValue);
+ field.setAccessible(originAccessible);
}
/**
@@ -50,10 +73,14 @@ public final class ReflectionUtils {
* @param fieldName field name
* @param fieldValue field value
*/
- @SneakyThrows
+ @SneakyThrows(ReflectiveOperationException.class)
public static void setSuperclassFieldValue(final Object target, final
String fieldName, final Object fieldValue) {
Field field =
target.getClass().getSuperclass().getDeclaredField(fieldName);
- field.setAccessible(true);
+ boolean originAccessible = field.isAccessible();
+ if (!originAccessible) {
+ field.setAccessible(true);
+ }
field.set(target, fieldValue);
+ field.setAccessible(originAccessible);
}
}