From 49f2417c8309ba035bba2a7624b541052474cf4c Mon Sep 17 00:00:00 2001 From: Yanming Zhou Date: Thu, 18 Dec 2025 10:57:44 +0800 Subject: [PATCH] Restore disabled JdbcJobDaoTests Signed-off-by: Yanming Zhou --- .../repository/dao/AbstractJobDaoTests.java | 26 ++++--------------- .../repository/dao/jdbc/JdbcJobDaoTests.java | 1 - 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/AbstractJobDaoTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/AbstractJobDaoTests.java index 53c787f527..57d9aae9f6 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/AbstractJobDaoTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/AbstractJobDaoTests.java @@ -43,6 +43,7 @@ /** * @author Dave Syer * @author Mahmoud Ben Hassine + * @author Yanming Zhou * */ public abstract class AbstractJobDaoTests { @@ -92,7 +93,7 @@ void onSetUpInTransaction() { // Create an execution jobExecutionStartTime = LocalDateTime.now(); - jobExecution = new JobExecution(1L, jobInstance, jobParameters); + jobExecution = jobExecutionDao.createJobExecution(jobInstance, jobParameters); jobExecution.setStartTime(jobExecutionStartTime); jobExecution.setStatus(BatchStatus.STARTED); jobExecutionDao.updateJobExecution(jobExecution); @@ -112,7 +113,7 @@ void testVersionIsNotNullForJobExecution() { int version = jdbcTemplate.queryForObject( "select version from BATCH_JOB_EXECUTION where JOB_EXECUTION_ID=" + jobExecution.getId(), Integer.class); - assertEquals(0, version); + assertEquals(1, version); } @Transactional @@ -193,7 +194,7 @@ void testUpdateInvalidJobExecution() { // id is invalid JobExecution execution = new JobExecution(29432L, jobInstance, jobParameters); execution.incrementVersion(); - assertThrows(NoSuchObjectException.class, () -> jobExecutionDao.updateJobExecution(execution)); + assertThrows(RuntimeException.class, () -> jobExecutionDao.updateJobExecution(execution)); } @Transactional @@ -254,10 +255,8 @@ private void validateJobExecution(JobExecution lhs, JobExecution rhs) { @Transactional @Test void testGetLastJobExecution() { - assertEquals(null, jobExecutionDao.getLastJobExecution(jobInstance)); - JobExecution lastExecution = new JobExecution(1L, jobInstance, jobParameters); - lastExecution.setStatus(BatchStatus.STARTED); + JobExecution lastExecution = jobExecutionDao.getLastJobExecution(jobInstance); int JUMP_INTO_FUTURE = 1000; // makes sure start time is 'greatest' lastExecution.setCreateTime(LocalDateTime.now().plus(JUMP_INTO_FUTURE, ChronoUnit.MILLIS)); @@ -291,21 +290,6 @@ void testCreationAddsVersion() { assertNotNull(jobInstance.getVersion()); } - @Transactional - @Test - void testSaveAddsVersionAndId() { - - JobExecution jobExecution = new JobExecution(1L, jobInstance, jobParameters); - - assertNull(jobExecution.getId()); - assertNull(jobExecution.getVersion()); - - jobExecutionDao.updateJobExecution(jobExecution); - - assertNotNull(jobExecution.getId()); - assertNotNull(jobExecution.getVersion()); - } - @Transactional @Test void testUpdateIncrementsVersion() { diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/jdbc/JdbcJobDaoTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/jdbc/JdbcJobDaoTests.java index 8891e47596..b6ed3cb9ad 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/jdbc/JdbcJobDaoTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/repository/dao/jdbc/JdbcJobDaoTests.java @@ -32,7 +32,6 @@ @SpringJUnitConfig(locations = { "sql-dao-test.xml" }) // TODO refactor using black-box testing instead of white-box testing -@Disabled public class JdbcJobDaoTests extends AbstractJobDaoTests { public static final String LONG_STRING = "A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String A very long String ";