This is an automated email from the ASF dual-hosted git repository.
miaoliyao 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 621cf953c Move annotation e2e test cases to e2e module (#2339)
621cf953c is described below
commit 621cf953cf0382a652145eaf6d72df767f8766c4
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Oct 30 11:46:20 2023 +0800
Move annotation e2e test cases to e2e module (#2339)
* Move annotation e2e test cases to e2e module
* Refactor JobAnnotationBuilderTest
* Move SnapshotService e2e test to e2e module
---
.../internal/annotation/JobAnnotationBuilderTest.java | 5 ++---
.../annotation/fixture/AnnotationJobFixture.java} | 8 ++++----
.../test/e2e/annotation/BaseAnnotationE2ETest.java | 6 +++---
.../test/e2e/annotation/OneOffEnabledJobE2ETest.java | 13 +++++++------
.../test/e2e/annotation/ScheduleEnabledJobE2ETest.java | 13 +++++++------
.../test/e2e/annotation/fixture}/AnnotationSimpleJob.java | 6 +++---
.../e2e/annotation/fixture}/AnnotationUnShardingJob.java | 9 +++------
.../elasticjob/test/e2e/{ => raw}/BaseE2ETest.java | 2 +-
.../test/e2e/{ => raw}/disable/DisabledJobE2ETest.java | 6 +++---
.../e2e/{ => raw}/disable/OneOffDisabledJobE2ETest.java | 2 +-
.../e2e/{ => raw}/disable/ScheduleDisabledJobE2ETest.java | 4 ++--
.../test/e2e/{ => raw}/enable/EnabledJobE2ETest.java | 4 ++--
.../test/e2e/{ => raw}/enable/OneOffEnabledJobE2ETest.java | 4 ++--
.../e2e/{ => raw}/enable/ScheduleEnabledJobE2ETest.java | 4 ++--
.../{ => raw}/fixture/executor/E2EFixtureJobExecutor.java | 4 ++--
.../test/e2e/{ => raw}/fixture/job/E2EFixtureJob.java | 2 +-
.../test/e2e/{ => raw}/fixture/job/E2EFixtureJobImpl.java | 2 +-
.../listener/DistributeOnceE2EFixtureJobListener.java | 2 +-
.../{ => raw}/fixture/listener/E2EFixtureJobListener.java | 2 +-
.../test/e2e/snapshot/BaseSnapshotServiceE2ETest.java | 7 ++++---
.../test/e2e/snapshot/SnapshotServiceDisableE2ETest.java | 11 ++++++-----
.../test/e2e/snapshot/SnapshotServiceEnableE2ETest.java | 11 ++++++-----
.../elasticjob/test/e2e}/snapshot/SocketUtils.java | 2 +-
...rdingsphere.elasticjob.infra.listener.ElasticJobListener | 4 ++--
...hardingsphere.elasticjob.spi.type.ClassedJobItemExecutor | 2 +-
25 files changed, 68 insertions(+), 67 deletions(-)
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/JobAnnotationBuilderTest.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/JobAnnotationBuilderTest.java
index 201e7ad76..486e829fc 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/JobAnnotationBuilderTest.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/JobAnnotationBuilderTest.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.elasticjob.kernel.internal.annotation;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
-import
org.apache.shardingsphere.elasticjob.kernel.fixture.job.AnnotationSimpleJob;
+import
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.fixture.AnnotationJobFixture;
import org.junit.jupiter.api.Test;
import static org.hamcrest.CoreMatchers.is;
@@ -31,7 +31,7 @@ class JobAnnotationBuilderTest {
@Test
void assertGenerateJobConfiguration() {
- JobConfiguration jobConfig =
JobAnnotationBuilder.generateJobConfiguration(AnnotationSimpleJob.class);
+ JobConfiguration jobConfig =
JobAnnotationBuilder.generateJobConfiguration(AnnotationJobFixture.class);
assertThat(jobConfig.getJobName(), is("AnnotationSimpleJob"));
assertThat(jobConfig.getShardingTotalCount(), is(3));
assertThat(jobConfig.getShardingItemParameters(), is("0=a,1=b,2=c"));
@@ -50,5 +50,4 @@ class JobAnnotationBuilderTest {
assertFalse(jobConfig.isDisabled());
assertFalse(jobConfig.isOverwrite());
}
-
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/fixture/AnnotationJobFixture.java
similarity index 92%
copy from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
copy to
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/fixture/AnnotationJobFixture.java
index a6c4a39b0..343320bf1 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
+++
b/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/fixture/AnnotationJobFixture.java
@@ -15,15 +15,14 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.fixture.job;
+package
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.fixture;
import lombok.Getter;
import org.apache.shardingsphere.elasticjob.annotation.ElasticJobConfiguration;
import org.apache.shardingsphere.elasticjob.annotation.ElasticJobProp;
-import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
import org.apache.shardingsphere.elasticjob.simple.job.SimpleJob;
+import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
-@Getter
@ElasticJobConfiguration(
jobName = "AnnotationSimpleJob",
description = "desc",
@@ -34,7 +33,8 @@ import
org.apache.shardingsphere.elasticjob.simple.job.SimpleJob;
@ElasticJobProp(key = "print.title", value = "test title"),
@ElasticJobProp(key = "print.content", value = "test content")
})
-public class AnnotationSimpleJob implements SimpleJob {
+@Getter
+public class AnnotationJobFixture implements SimpleJob {
private volatile boolean completed;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/BaseAnnotationE2ETest.java
similarity index 95%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/BaseAnnotationE2ETest.java
index 483bf963c..2ac000812 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/BaseAnnotationTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/BaseAnnotationE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.integrate;
+package org.apache.shardingsphere.elasticjob.test.e2e.annotation;
import lombok.AccessLevel;
import lombok.Getter;
@@ -37,7 +37,7 @@ import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
@Getter(AccessLevel.PROTECTED)
-public abstract class BaseAnnotationTest {
+public abstract class BaseAnnotationE2ETest {
private static final EmbedTestingServer EMBED_TESTING_SERVER = new
EmbedTestingServer(7181);
@@ -56,7 +56,7 @@ public abstract class BaseAnnotationTest {
private final String jobName;
- protected BaseAnnotationTest(final TestType type, final ElasticJob
elasticJob) {
+ protected BaseAnnotationE2ETest(final TestType type, final ElasticJob
elasticJob) {
this.elasticJob = elasticJob;
jobConfiguration =
JobAnnotationBuilder.generateJobConfiguration(elasticJob.getClass());
jobName = jobConfiguration.getJobName();
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/OneOffEnabledJobTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/OneOffEnabledJobE2ETest.java
similarity index 88%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/OneOffEnabledJobTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/OneOffEnabledJobE2ETest.java
index 0c84f620a..63328bd41 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/OneOffEnabledJobTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/OneOffEnabledJobE2ETest.java
@@ -15,16 +15,17 @@
* limitations under the License.
*/
-package
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.integrate;
+package org.apache.shardingsphere.elasticjob.test.e2e.annotation;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.infra.env.IpUtils;
-import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import org.apache.shardingsphere.elasticjob.infra.yaml.YamlEngine;
-import
org.apache.shardingsphere.elasticjob.kernel.fixture.job.AnnotationUnShardingJob;
+import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
+import
org.apache.shardingsphere.elasticjob.test.e2e.annotation.fixture.AnnotationUnShardingJob;
import org.awaitility.Awaitility;
+import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -35,9 +36,9 @@ import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-class OneOffEnabledJobTest extends BaseAnnotationTest {
+class OneOffEnabledJobE2ETest extends BaseAnnotationE2ETest {
- OneOffEnabledJobTest() {
+ OneOffEnabledJobE2ETest() {
super(TestType.ONE_OFF, new AnnotationUnShardingJob());
}
@@ -57,7 +58,7 @@ class OneOffEnabledJobTest extends BaseAnnotationTest {
@Test
void assertJobInit() {
- Awaitility.await().atMost(1L, TimeUnit.MINUTES).untilAsserted(() ->
assertThat(((AnnotationUnShardingJob) getElasticJob()).isCompleted(),
is(true)));
+ Awaitility.await().atMost(1L, TimeUnit.MINUTES).untilAsserted(() ->
MatcherAssert.assertThat(((AnnotationUnShardingJob)
getElasticJob()).isCompleted(), is(true)));
assertTrue(getREGISTRY_CENTER().isExisted("/" + getJobName() +
"/sharding"));
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/ScheduleEnabledJobTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/ScheduleEnabledJobE2ETest.java
similarity index 89%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/ScheduleEnabledJobTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/ScheduleEnabledJobE2ETest.java
index 111c9a5ab..cd1f8bce5 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/annotation/integrate/ScheduleEnabledJobTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/ScheduleEnabledJobE2ETest.java
@@ -15,16 +15,17 @@
* limitations under the License.
*/
-package
org.apache.shardingsphere.elasticjob.kernel.internal.annotation.integrate;
+package org.apache.shardingsphere.elasticjob.test.e2e.annotation;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.infra.env.IpUtils;
-import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import org.apache.shardingsphere.elasticjob.infra.yaml.YamlEngine;
-import
org.apache.shardingsphere.elasticjob.kernel.fixture.job.AnnotationSimpleJob;
+import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
+import
org.apache.shardingsphere.elasticjob.test.e2e.annotation.fixture.AnnotationSimpleJob;
import org.awaitility.Awaitility;
+import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -35,9 +36,9 @@ import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
-class ScheduleEnabledJobTest extends BaseAnnotationTest {
+class ScheduleEnabledJobE2ETest extends BaseAnnotationE2ETest {
- ScheduleEnabledJobTest() {
+ ScheduleEnabledJobE2ETest() {
super(TestType.SCHEDULE, new AnnotationSimpleJob());
}
@@ -59,7 +60,7 @@ class ScheduleEnabledJobTest extends BaseAnnotationTest {
@Test
void assertJobInit() {
- Awaitility.await().atMost(1L, TimeUnit.MINUTES).untilAsserted(() ->
assertThat(((AnnotationSimpleJob) getElasticJob()).isCompleted(), is(true)));
+ Awaitility.await().atMost(1L, TimeUnit.MINUTES).untilAsserted(() ->
MatcherAssert.assertThat(((AnnotationSimpleJob) getElasticJob()).isCompleted(),
is(true)));
assertTrue(getREGISTRY_CENTER().isExisted("/" + getJobName() +
"/sharding"));
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationSimpleJob.java
similarity index 95%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationSimpleJob.java
index a6c4a39b0..c6bade33b 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationSimpleJob.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationSimpleJob.java
@@ -15,15 +15,14 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.fixture.job;
+package org.apache.shardingsphere.elasticjob.test.e2e.annotation.fixture;
import lombok.Getter;
import org.apache.shardingsphere.elasticjob.annotation.ElasticJobConfiguration;
import org.apache.shardingsphere.elasticjob.annotation.ElasticJobProp;
-import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
import org.apache.shardingsphere.elasticjob.simple.job.SimpleJob;
+import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
-@Getter
@ElasticJobConfiguration(
jobName = "AnnotationSimpleJob",
description = "desc",
@@ -34,6 +33,7 @@ import
org.apache.shardingsphere.elasticjob.simple.job.SimpleJob;
@ElasticJobProp(key = "print.title", value = "test title"),
@ElasticJobProp(key = "print.content", value = "test content")
})
+@Getter
public class AnnotationSimpleJob implements SimpleJob {
private volatile boolean completed;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationUnShardingJob.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationUnShardingJob.java
similarity index 86%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationUnShardingJob.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationUnShardingJob.java
index eda26d1ee..aa9d890d7 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/fixture/job/AnnotationUnShardingJob.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/annotation/fixture/AnnotationUnShardingJob.java
@@ -15,18 +15,15 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.fixture.job;
+package org.apache.shardingsphere.elasticjob.test.e2e.annotation.fixture;
import lombok.Getter;
import org.apache.shardingsphere.elasticjob.annotation.ElasticJobConfiguration;
-import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
import org.apache.shardingsphere.elasticjob.simple.job.SimpleJob;
+import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
+@ElasticJobConfiguration(jobName = "AnnotationUnShardingJob", description =
"desc", shardingTotalCount = 1)
@Getter
-@ElasticJobConfiguration(
- jobName = "AnnotationUnShardingJob",
- description = "desc",
- shardingTotalCount = 1)
public final class AnnotationUnShardingJob implements SimpleJob {
private volatile boolean completed;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/BaseE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/BaseE2ETest.java
similarity index 98%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/BaseE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/BaseE2ETest.java
index 2deb0ea66..c3ff41536 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/BaseE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/BaseE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw;
import lombok.AccessLevel;
import lombok.Getter;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/DisabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/DisabledJobE2ETest.java
similarity index 93%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/DisabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/DisabledJobE2ETest.java
index 7c37ed9e7..9c845190c 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/DisabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/DisabledJobE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.disable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.disable;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.infra.env.IpUtils;
@@ -24,8 +24,8 @@ import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.ScheduleJo
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
-import org.apache.shardingsphere.elasticjob.test.e2e.BaseE2ETest;
-import
org.apache.shardingsphere.elasticjob.test.e2e.fixture.job.E2EFixtureJobImpl;
+import org.apache.shardingsphere.elasticjob.test.e2e.raw.BaseE2ETest;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.awaitility.Awaitility;
import org.hamcrest.core.IsNull;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/OneOffDisabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/OneOffDisabledJobE2ETest.java
similarity index 95%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/OneOffDisabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/OneOffDisabledJobE2ETest.java
index 634962e1b..8df2bcf13 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/OneOffDisabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/OneOffDisabledJobE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.disable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.disable;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.junit.jupiter.api.Test;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/ScheduleDisabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/ScheduleDisabledJobE2ETest.java
similarity index 94%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/ScheduleDisabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/ScheduleDisabledJobE2ETest.java
index 0b2ded9da..f397a43e4 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/disable/ScheduleDisabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/disable/ScheduleDisabledJobE2ETest.java
@@ -15,12 +15,12 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.disable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.disable;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
-import
org.apache.shardingsphere.elasticjob.test.e2e.fixture.job.E2EFixtureJobImpl;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.Test;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/EnabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/EnabledJobE2ETest.java
similarity index 96%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/EnabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/EnabledJobE2ETest.java
index c4bac7be9..9bab16b48 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/EnabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/EnabledJobE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.enable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.enable;
import org.apache.shardingsphere.elasticjob.api.ElasticJob;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.elasticjob.infra.env.IpUtils;
import
org.apache.shardingsphere.elasticjob.kernel.internal.config.JobConfigurationPOJO;
import org.apache.shardingsphere.elasticjob.infra.yaml.YamlEngine;
import
org.apache.shardingsphere.elasticjob.kernel.api.bootstrap.impl.ScheduleJobBootstrap;
-import org.apache.shardingsphere.elasticjob.test.e2e.BaseE2ETest;
+import org.apache.shardingsphere.elasticjob.test.e2e.raw.BaseE2ETest;
import
org.apache.shardingsphere.elasticjob.kernel.internal.schedule.JobRegistry;
import
org.apache.shardingsphere.elasticjob.kernel.internal.server.ServerStatus;
import org.junit.jupiter.api.BeforeEach;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/OneOffEnabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/OneOffEnabledJobE2ETest.java
similarity index 92%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/OneOffEnabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/OneOffEnabledJobE2ETest.java
index 35a8634b9..6c117b347 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/OneOffEnabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/OneOffEnabledJobE2ETest.java
@@ -15,10 +15,10 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.enable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.enable;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
-import
org.apache.shardingsphere.elasticjob.test.e2e.fixture.job.E2EFixtureJobImpl;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.Test;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/ScheduleEnabledJobE2ETest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/ScheduleEnabledJobE2ETest.java
similarity index 92%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/ScheduleEnabledJobE2ETest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/ScheduleEnabledJobE2ETest.java
index c2630598e..d211e4fc0 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/enable/ScheduleEnabledJobE2ETest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/enable/ScheduleEnabledJobE2ETest.java
@@ -15,10 +15,10 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.enable;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.enable;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
-import
org.apache.shardingsphere.elasticjob.test.e2e.fixture.job.E2EFixtureJobImpl;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.awaitility.Awaitility;
import org.junit.jupiter.api.Test;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/executor/E2EFixtureJobExecutor.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/executor/E2EFixtureJobExecutor.java
similarity index 90%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/executor/E2EFixtureJobExecutor.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/executor/E2EFixtureJobExecutor.java
index 56023790a..5b6319a4e 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/executor/E2EFixtureJobExecutor.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/executor/E2EFixtureJobExecutor.java
@@ -15,13 +15,13 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.fixture.executor;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.executor;
import org.apache.shardingsphere.elasticjob.api.JobConfiguration;
import org.apache.shardingsphere.elasticjob.spi.param.JobRuntimeService;
import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
import org.apache.shardingsphere.elasticjob.spi.type.ClassedJobItemExecutor;
-import org.apache.shardingsphere.elasticjob.test.e2e.fixture.job.E2EFixtureJob;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJob;
public final class E2EFixtureJobExecutor implements
ClassedJobItemExecutor<E2EFixtureJob> {
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJob.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJob.java
similarity index 94%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJob.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJob.java
index 56824f0aa..7be1ba4e4 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJob.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJob.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.fixture.job;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job;
import org.apache.shardingsphere.elasticjob.api.ElasticJob;
import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJobImpl.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJobImpl.java
similarity index 95%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJobImpl.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJobImpl.java
index 9dc6bb621..d86b84b30 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/job/E2EFixtureJobImpl.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/job/E2EFixtureJobImpl.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.fixture.job;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job;
import lombok.Getter;
import org.apache.shardingsphere.elasticjob.spi.param.ShardingContext;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/DistributeOnceE2EFixtureJobListener.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/DistributeOnceE2EFixtureJobListener.java
similarity index 95%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/DistributeOnceE2EFixtureJobListener.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/DistributeOnceE2EFixtureJobListener.java
index b1580c55c..24fa928f9 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/DistributeOnceE2EFixtureJobListener.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/DistributeOnceE2EFixtureJobListener.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.fixture.listener;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.listener;
import org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
import
org.apache.shardingsphere.elasticjob.kernel.api.listener.AbstractDistributeOnceElasticJobListener;
diff --git
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/E2EFixtureJobListener.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/E2EFixtureJobListener.java
similarity index 94%
rename from
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/E2EFixtureJobListener.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/E2EFixtureJobListener.java
index 6f92f7fa2..efa4bfa82 100644
---
a/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/fixture/listener/E2EFixtureJobListener.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/raw/fixture/listener/E2EFixtureJobListener.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.test.e2e.fixture.listener;
+package org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.listener;
import org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener;
import org.apache.shardingsphere.elasticjob.infra.listener.ShardingContexts;
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/BaseSnapshotServiceE2ETest.java
similarity index 91%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/BaseSnapshotServiceE2ETest.java
index 023a62c14..d3a852df2 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/BaseSnapshotServiceTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/BaseSnapshotServiceE2ETest.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.internal.snapshot;
+package org.apache.shardingsphere.elasticjob.test.e2e.snapshot;
import lombok.AccessLevel;
import lombok.Getter;
@@ -23,6 +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.internal.snapshot.SnapshotService;
import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.apache.shardingsphere.elasticjob.reg.base.CoordinatorRegistryCenter;
import
org.apache.shardingsphere.elasticjob.reg.zookeeper.ZookeeperConfiguration;
@@ -32,7 +33,7 @@ import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
-public abstract class BaseSnapshotServiceTest {
+public abstract class BaseSnapshotServiceE2ETest {
static final int DUMP_PORT = 9000;
@@ -51,7 +52,7 @@ public abstract class BaseSnapshotServiceTest {
@Getter(value = AccessLevel.PROTECTED)
private final String jobName = System.nanoTime() + "_test_job";
- public BaseSnapshotServiceTest(final ElasticJob elasticJob) {
+ public BaseSnapshotServiceE2ETest(final ElasticJob elasticJob) {
bootstrap = new ScheduleJobBootstrap(REG_CENTER, elasticJob,
JobConfiguration.newBuilder(jobName, 3).cron("0/1 * * * *
?").overwrite(true).build());
}
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceDisableE2ETest.java
similarity index 82%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceDisableE2ETest.java
index 1024fa4bd..a06005254 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceDisableTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceDisableE2ETest.java
@@ -15,9 +15,10 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.internal.snapshot;
+package org.apache.shardingsphere.elasticjob.test.e2e.snapshot;
-import org.apache.shardingsphere.elasticjob.kernel.fixture.job.DetailedFooJob;
+import
org.apache.shardingsphere.elasticjob.kernel.internal.snapshot.SnapshotService;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.apache.shardingsphere.elasticjob.test.util.ReflectionUtils;
import org.junit.jupiter.api.Test;
@@ -27,10 +28,10 @@ import java.net.ServerSocket;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertThrows;
-class SnapshotServiceDisableTest extends BaseSnapshotServiceTest {
+class SnapshotServiceDisableE2ETest extends BaseSnapshotServiceE2ETest {
- SnapshotServiceDisableTest() {
- super(new DetailedFooJob());
+ SnapshotServiceDisableE2ETest() {
+ super(new E2EFixtureJobImpl());
}
@Test
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceEnableTest.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceEnableE2ETest.java
similarity index 82%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceEnableTest.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceEnableE2ETest.java
index 3c40dcaa5..fb335aaf6 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SnapshotServiceEnableTest.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SnapshotServiceEnableE2ETest.java
@@ -15,9 +15,10 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.internal.snapshot;
+package org.apache.shardingsphere.elasticjob.test.e2e.snapshot;
-import org.apache.shardingsphere.elasticjob.kernel.fixture.job.DetailedFooJob;
+import
org.apache.shardingsphere.elasticjob.kernel.internal.snapshot.SnapshotService;
+import
org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.job.E2EFixtureJobImpl;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -27,10 +28,10 @@ import java.io.IOException;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-class SnapshotServiceEnableTest extends BaseSnapshotServiceTest {
+class SnapshotServiceEnableE2ETest extends BaseSnapshotServiceE2ETest {
- SnapshotServiceEnableTest() {
- super(new DetailedFooJob());
+ SnapshotServiceEnableE2ETest() {
+ super(new E2EFixtureJobImpl());
}
@BeforeEach
diff --git
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SocketUtils.java
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SocketUtils.java
similarity index 96%
rename from
kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SocketUtils.java
rename to
test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SocketUtils.java
index 130c10288..6a79307ce 100644
---
a/kernel/src/test/java/org/apache/shardingsphere/elasticjob/kernel/internal/snapshot/SocketUtils.java
+++
b/test/e2e/src/test/java/org/apache/shardingsphere/elasticjob/test/e2e/snapshot/SocketUtils.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.elasticjob.kernel.internal.snapshot;
+package org.apache.shardingsphere.elasticjob.test.e2e.snapshot;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git
a/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener
b/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener
index 9c94b1d7d..c68f7881f 100644
---
a/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener
+++
b/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.infra.listener.ElasticJobListener
@@ -15,5 +15,5 @@
# limitations under the License.
#
-org.apache.shardingsphere.elasticjob.test.e2e.fixture.listener.DistributeOnceE2EFixtureJobListener
-org.apache.shardingsphere.elasticjob.test.e2e.fixture.listener.E2EFixtureJobListener
+org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.listener.DistributeOnceE2EFixtureJobListener
+org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.listener.E2EFixtureJobListener
diff --git
a/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.spi.type.ClassedJobItemExecutor
b/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.spi.type.ClassedJobItemExecutor
index f3a27ae28..1956aaedc 100644
---
a/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.spi.type.ClassedJobItemExecutor
+++
b/test/e2e/src/test/resources/META-INF/services/org.apache.shardingsphere.elasticjob.spi.type.ClassedJobItemExecutor
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.elasticjob.test.e2e.fixture.executor.E2EFixtureJobExecutor
+org.apache.shardingsphere.elasticjob.test.e2e.raw.fixture.executor.E2EFixtureJobExecutor