Skip to content

Commit

Permalink
#26400 rewrite IT
Browse files Browse the repository at this point in the history
  • Loading branch information
dsilvam committed Oct 10, 2023
1 parent cf12fd6 commit 86636d0
Showing 1 changed file with 36 additions and 25 deletions.
Expand Up @@ -5,6 +5,7 @@
import static com.dotcms.util.CollectionsUtils.map;
import static com.dotcms.variant.VariantAPI.DEFAULT_VARIANT;
import static junit.framework.TestCase.assertEquals;
import static junit.framework.TestCase.assertNotSame;
import static junit.framework.TestCase.assertTrue;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotEquals;
Expand Down Expand Up @@ -206,10 +207,10 @@ public void createRunningIdWhenExperimentIsTurnToRunning()
public void createRunningIdWithStartScheduled()
throws DotDataException, DotSecurityException {
final Experiment experiment = new ExperimentDataGen()
.status(Status.SCHEDULED)
.status(Status.DRAFT)
.scheduling(Scheduling.builder()
.startDate(Instant.now())
.endDate(Instant.now().plus(2, ChronoUnit.DAYS))
.endDate(Instant.now().plus(10, ChronoUnit.DAYS))
.build())
.nextPersisted();

Expand All @@ -221,8 +222,11 @@ public void createRunningIdWithStartScheduled()

assertFalse(experimentFromDataBase_1.runningIds().iterator().hasNext());

final Experiment scheduledExperiment = APILocator.getExperimentsAPI()
.start(experiment.id().get(), APILocator.systemUser());

final Experiment experimentStarted = APILocator.getExperimentsAPI()
.startScheduled(experiment.id().get(), APILocator.systemUser());
.startScheduled(scheduledExperiment.id().get(), APILocator.systemUser());

try {
assertNotNull(experimentStarted.runningIds());
Expand Down Expand Up @@ -307,43 +311,50 @@ public void restartExperimentMustGenerateTwoRunningIds()
public void restartExperimentUsingTheStartScheduled()
throws DotDataException, DotSecurityException {
final Experiment experiment = new ExperimentDataGen()
.status(Status.SCHEDULED)
.status(Status.DRAFT)
.scheduling(Scheduling.builder()
.startDate(Instant.now())
.endDate(Instant.now().plus(2, ChronoUnit.DAYS))
.endDate(Instant.now().plus(10, ChronoUnit.DAYS))
.build())
.nextPersisted();

final Experiment experimentStarted = APILocator.getExperimentsAPI()
.startScheduled(experiment.id().get(), APILocator.systemUser());
final Experiment scheduledExperiment = APILocator.getExperimentsAPI()
.start(experiment.id().get(), APILocator.systemUser());

final Experiment experimentToRestart = Experiment.builder().from(experimentStarted)
.status(Status.SCHEDULED)
.scheduling(Scheduling.builder()
.startDate(Instant.now())
.endDate(Instant.now().plus(2, ChronoUnit.DAYS))
.build())
.build();
final Experiment startedExperiment = APILocator.getExperimentsAPI()
.startScheduled(scheduledExperiment.id().get(), APILocator.systemUser());

try {
FactoryLocator.getExperimentsFactory().save(experimentToRestart);
final Experiment endedExperiment = APILocator.getExperimentsAPI()
.end(startedExperiment.id().get(), APILocator.systemUser());

APILocator.getExperimentsAPI()
.startScheduled(experimentToRestart.id().get(), APILocator.systemUser());
final Experiment experimentToRestart = APILocator.getExperimentsAPI()
.save(
Experiment.builder().from(endedExperiment)
.status(Status.DRAFT)
.scheduling(Scheduling.builder()
.startDate(Instant.now())
.endDate(Instant.now().plus(10, ChronoUnit.DAYS))
.build())
.build(), APILocator.systemUser());

final Experiment experimentAfterReStart = APILocator.getExperimentsAPI()
.find(experimentToRestart.id().get(), APILocator.systemUser())
.orElseThrow(() -> new AssertionError("Experiment not found"));
final Experiment rescheduledExperiment = APILocator.getExperimentsAPI()
.start(experimentToRestart.id().get(), APILocator.systemUser());

assertEquals(2, experimentAfterReStart.runningIds().size());
final Experiment restartedExperiment = APILocator.getExperimentsAPI()
.startScheduled(rescheduledExperiment.id().get(), APILocator.systemUser());

assertTrue(experimentAfterReStart.runningIds().getAll().stream()
try {

assertEquals(2, restartedExperiment.runningIds().size());

assertTrue(restartedExperiment.runningIds().getAll().stream()
.anyMatch(runningId -> runningId.endDate() != null));

assertTrue(experimentAfterReStart.runningIds().getAll().stream()
assertTrue(restartedExperiment.runningIds().getAll().stream()
.anyMatch(runningId -> runningId.endDate() == null));

assertTrue(experimentAfterReStart.runningIds().get(0).id() != experimentAfterReStart.runningIds().get(1).id());
assertNotSame(restartedExperiment.runningIds().get(0).id(),
restartedExperiment.runningIds().get(1).id());
} finally {
APILocator.getExperimentsAPI().end(experimentToRestart.id().get(), APILocator.systemUser());
}
Expand Down

0 comments on commit 86636d0

Please sign in to comment.