[BAEL-3646] Addressing PR comments
This commit is contained in:
+56
@@ -0,0 +1,56 @@
|
||||
package org.baeldung.conditionalflow;
|
||||
|
||||
import org.baeldung.conditionalflow.config.NumberInfoConfig;
|
||||
import org.junit.After;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.batch.core.ExitStatus;
|
||||
import org.springframework.batch.core.JobExecution;
|
||||
import org.springframework.batch.core.StepExecution;
|
||||
import org.springframework.batch.test.AssertFile;
|
||||
import org.springframework.batch.test.JobLauncherTestUtils;
|
||||
import org.springframework.batch.test.JobRepositoryTestUtils;
|
||||
import org.springframework.batch.test.context.SpringBatchTest;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.test.annotation.DirtiesContext;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.TestExecutionListeners;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
import org.springframework.test.context.support.DependencyInjectionTestExecutionListener;
|
||||
import org.springframework.test.context.support.DirtiesContextTestExecutionListener;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Iterator;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBatchTest
|
||||
@EnableAutoConfiguration
|
||||
@ContextConfiguration(classes = { NumberInfoConfig.class })
|
||||
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class, DirtiesContextTestExecutionListener.class })
|
||||
@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_CLASS)
|
||||
public class DeciderJobIntegrationTest {
|
||||
@Autowired
|
||||
private JobLauncherTestUtils jobLauncherTestUtils;
|
||||
|
||||
@Test
|
||||
public void whenNumberGeneratorDecider_thenNotifyStepRuns() throws Exception {
|
||||
JobExecution jobExecution = jobLauncherTestUtils.launchJob();
|
||||
Collection<StepExecution> actualStepExecutions = jobExecution.getStepExecutions();
|
||||
ExitStatus actualJobExitStatus = jobExecution.getExitStatus();
|
||||
|
||||
assertEquals(actualJobExitStatus.getExitCode().toString(), "COMPLETED");
|
||||
assertEquals(actualStepExecutions.size(), 2);
|
||||
boolean notifyStepDidRun = false;
|
||||
Iterator<StepExecution> iterator = actualStepExecutions.iterator();
|
||||
while(iterator.hasNext() && !notifyStepDidRun){
|
||||
if(iterator.next().getStepName().equals("Notify step")){
|
||||
notifyStepDidRun = true;
|
||||
}
|
||||
}
|
||||
assertTrue(notifyStepDidRun);
|
||||
}
|
||||
}
|
||||
+52
-25
@@ -1,44 +1,71 @@
|
||||
package org.baeldung.conditionalflow.model;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertFalse;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
class NumberInfoUnitTest {
|
||||
|
||||
@Test
|
||||
void isPositive() {
|
||||
assertTrue(NumberInfo.from(1).isPositive());
|
||||
assertTrue(NumberInfo.from(11).isPositive());
|
||||
assertFalse(NumberInfo.from(0).isPositive());
|
||||
assertFalse(NumberInfo.from(-1).isPositive());
|
||||
assertFalse(NumberInfo.from(-10).isPositive());
|
||||
void whenPositive_isPositive() {
|
||||
assertTrue(NumberInfo.from(1)
|
||||
.isPositive());
|
||||
assertTrue(NumberInfo.from(11)
|
||||
.isPositive());
|
||||
assertFalse(NumberInfo.from(0)
|
||||
.isPositive());
|
||||
}
|
||||
|
||||
@Test
|
||||
void isEven() {
|
||||
assertTrue(NumberInfo.from(0).isEven());
|
||||
assertTrue(NumberInfo.from(-2).isEven());
|
||||
assertTrue(NumberInfo.from(2).isEven());
|
||||
assertTrue(NumberInfo.from(-22).isEven());
|
||||
assertTrue(NumberInfo.from(22).isEven());
|
||||
|
||||
assertFalse(NumberInfo.from(1).isEven());
|
||||
assertFalse(NumberInfo.from(-1).isEven());
|
||||
|
||||
assertFalse(NumberInfo.from(13).isEven());
|
||||
assertFalse(NumberInfo.from(-13).isEven());
|
||||
assertFalse(NumberInfo.from(31).isEven());
|
||||
assertFalse(NumberInfo.from(-51).isEven());
|
||||
void whenNegative_isPositive_isFalse() {
|
||||
assertFalse(NumberInfo.from(-1)
|
||||
.isPositive());
|
||||
assertFalse(NumberInfo.from(-10)
|
||||
.isPositive());
|
||||
}
|
||||
|
||||
@Test
|
||||
void getNumber() {
|
||||
for(int i = -100 ; i < 100 ; i++){
|
||||
assertEquals(i, NumberInfo.from(i).getNumber());
|
||||
void whenEven_isEven() {
|
||||
assertTrue(NumberInfo.from(0)
|
||||
.isEven());
|
||||
assertTrue(NumberInfo.from(-2)
|
||||
.isEven());
|
||||
assertTrue(NumberInfo.from(2)
|
||||
.isEven());
|
||||
assertTrue(NumberInfo.from(-22)
|
||||
.isEven());
|
||||
assertTrue(NumberInfo.from(22)
|
||||
.isEven());
|
||||
}
|
||||
|
||||
@Test
|
||||
void whenOdd_isEven_isFalse() {
|
||||
|
||||
assertFalse(NumberInfo.from(1)
|
||||
.isEven());
|
||||
assertFalse(NumberInfo.from(-1)
|
||||
.isEven());
|
||||
|
||||
assertFalse(NumberInfo.from(13)
|
||||
.isEven());
|
||||
assertFalse(NumberInfo.from(-13)
|
||||
.isEven());
|
||||
assertFalse(NumberInfo.from(31)
|
||||
.isEven());
|
||||
assertFalse(NumberInfo.from(-51)
|
||||
.isEven());
|
||||
}
|
||||
|
||||
@Test
|
||||
void testStatic_fromMethod_equals_getNumber() {
|
||||
for (int i = -100; i < 100; i++) {
|
||||
assertEquals(i, NumberInfo.from(i)
|
||||
.getNumber());
|
||||
}
|
||||
}
|
||||
}
|
||||
+4
-5
@@ -1,15 +1,14 @@
|
||||
package org.baeldung.conditionalflow.step;
|
||||
|
||||
import org.baeldung.conditionalflow.model.NumberInfo;
|
||||
import org.baeldung.conditionalflow.step.NumberInfoClassifier;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
import org.baeldung.conditionalflow.model.NumberInfo;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
class NumberInfoClassifierUnitTest {
|
||||
|
||||
@Test
|
||||
void process() throws Exception {
|
||||
void process_convertsToInteger() throws Exception {
|
||||
NumberInfoClassifier nic = new NumberInfoClassifier();
|
||||
assertEquals(Integer.valueOf(4), nic.process(NumberInfo.from(4)));
|
||||
assertEquals(Integer.valueOf(-4), nic.process(NumberInfo.from(-4)));
|
||||
|
||||
+4
-4
@@ -1,14 +1,14 @@
|
||||
package org.baeldung.conditionalflow.step;
|
||||
|
||||
import org.baeldung.conditionalflow.model.NumberInfo;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
import org.baeldung.conditionalflow.model.NumberInfo;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
public class NumberInfoGeneratorUnitTest {
|
||||
@Test
|
||||
public void testGenerateNumbers() {
|
||||
public void testGenerateNumbers_correctOrderAndValue() {
|
||||
int[] numbers = new int[]{1, -2, 4, -10};
|
||||
NumberInfoGenerator numberGenerator = new NumberInfoGenerator(numbers);
|
||||
assertEquals(new NumberInfo(numbers[0]), numberGenerator.read());
|
||||
|
||||
Reference in New Issue
Block a user