@@ -113,23 +113,22 @@ class BatchAutoConfigurationTests {
113113
114114 @ Test
115115 void testDefaultContext () {
116- this .contextRunner .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class )
117- .run ((context ) -> {
118- assertThat (context ).hasSingleBean (JobRepository .class );
119- assertThat (context ).hasSingleBean (JobLauncher .class );
120- assertThat (context ).hasSingleBean (JobExplorer .class );
121- assertThat (context ).hasSingleBean (JobRegistry .class );
122- assertThat (context ).hasSingleBean (JobOperator .class );
123- assertThat (context .getBean (BatchProperties .class ).getJdbc ().getInitializeSchema ())
124- .isEqualTo (DatabaseInitializationMode .EMBEDDED );
125- assertThat (new JdbcTemplate (context .getBean (DataSource .class ))
126- .queryForList ("select * from BATCH_JOB_EXECUTION" )).isEmpty ();
127- });
116+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class ).run ((context ) -> {
117+ assertThat (context ).hasSingleBean (JobRepository .class );
118+ assertThat (context ).hasSingleBean (JobLauncher .class );
119+ assertThat (context ).hasSingleBean (JobExplorer .class );
120+ assertThat (context ).hasSingleBean (JobRegistry .class );
121+ assertThat (context ).hasSingleBean (JobOperator .class );
122+ assertThat (context .getBean (BatchProperties .class ).getJdbc ().getInitializeSchema ())
123+ .isEqualTo (DatabaseInitializationMode .EMBEDDED );
124+ assertThat (new JdbcTemplate (context .getBean (DataSource .class ))
125+ .queryForList ("select * from BATCH_JOB_EXECUTION" )).isEmpty ();
126+ });
128127 }
129128
130129 @ Test
131130 void autoconfigurationBacksOffEntirelyIfSpringJdbcAbsent () {
132- this .contextRunner .withUserConfiguration (TestConfiguration . class , EmbeddedDataSourceConfiguration .class )
131+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class )
133132 .withClassLoader (new FilteredClassLoader (DatabasePopulator .class ))
134133 .run ((context ) -> {
135134 assertThat (context ).doesNotHaveBean (JobLauncherApplicationRunner .class );
@@ -253,7 +252,7 @@ void testDisableLaunchesJob() {
253252
254253 @ Test
255254 void testDisableSchemaLoader () {
256- this .contextRunner .withUserConfiguration (TestConfiguration . class , EmbeddedDataSourceConfiguration .class )
255+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class )
257256 .withPropertyValues ("spring.datasource.generate-unique-name=true" ,
258257 "spring.batch.jdbc.initialize-schema:never" )
259258 .run ((context ) -> {
@@ -270,7 +269,7 @@ void testDisableSchemaLoader() {
270269 @ Test
271270 void testUsingJpa () {
272271 this .contextRunner
273- .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class ,
272+ .withUserConfiguration (TestJpaConfiguration .class , EmbeddedDataSourceConfiguration .class ,
274273 HibernateJpaAutoConfiguration .class )
275274 .run ((context ) -> {
276275 PlatformTransactionManager transactionManager = context .getBean (PlatformTransactionManager .class );
@@ -288,11 +287,9 @@ void testUsingJpa() {
288287 @ Test
289288 @ WithPackageResources ("custom-schema.sql" )
290289 void testRenamePrefix () {
291- this .contextRunner
292- .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class ,
293- HibernateJpaAutoConfiguration .class )
290+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class )
294291 .withPropertyValues ("spring.datasource.generate-unique-name=true" ,
295- "spring.batch.jdbc.schema:classpath:custom-schema.sql" , "spring.batch.jdbc.tablePrefix :PREFIX_" )
292+ "spring.batch.jdbc.schema:classpath:custom-schema.sql" , "spring.batch.jdbc.table-prefix :PREFIX_" )
296293 .run ((context ) -> {
297294 assertThat (context ).hasSingleBean (JobLauncher .class );
298295 assertThat (context .getBean (BatchProperties .class ).getJdbc ().getInitializeSchema ())
@@ -309,7 +306,7 @@ void testRenamePrefix() {
309306 @ Test
310307 void testCustomizeJpaTransactionManagerUsingProperties () {
311308 this .contextRunner
312- .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class ,
309+ .withUserConfiguration (TestJpaConfiguration .class , EmbeddedDataSourceConfiguration .class ,
313310 HibernateJpaAutoConfiguration .class )
314311 .withPropertyValues ("spring.transaction.default-timeout:30" ,
315312 "spring.transaction.rollback-on-commit-failure:true" )
@@ -324,7 +321,7 @@ void testCustomizeJpaTransactionManagerUsingProperties() {
324321
325322 @ Test
326323 void testCustomizeDataSourceTransactionManagerUsingProperties () {
327- this .contextRunner .withUserConfiguration (TestConfiguration . class , EmbeddedDataSourceConfiguration .class )
324+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class )
328325 .withPropertyValues ("spring.transaction.default-timeout:30" ,
329326 "spring.transaction.rollback-on-commit-failure:true" )
330327 .run ((context ) -> {
@@ -338,49 +335,44 @@ void testCustomizeDataSourceTransactionManagerUsingProperties() {
338335
339336 @ Test
340337 void testBatchDataSource () {
341- this .contextRunner .withUserConfiguration (TestConfiguration .class , BatchDataSourceConfiguration .class )
342- .run ((context ) -> {
343- assertThat (context ).hasSingleBean (SpringBootBatchConfiguration .class )
344- .hasSingleBean (BatchDataSourceScriptDatabaseInitializer .class )
345- .hasBean ("batchDataSource" );
346- DataSource batchDataSource = context .getBean ("batchDataSource" , DataSource .class );
347- assertThat (context .getBean (SpringBootBatchConfiguration .class ).getDataSource ())
348- .isEqualTo (batchDataSource );
349- assertThat (context .getBean (BatchDataSourceScriptDatabaseInitializer .class ))
350- .hasFieldOrPropertyWithValue ("dataSource" , batchDataSource );
351- });
338+ this .contextRunner .withUserConfiguration (BatchDataSourceConfiguration .class ).run ((context ) -> {
339+ assertThat (context ).hasSingleBean (SpringBootBatchConfiguration .class )
340+ .hasSingleBean (BatchDataSourceScriptDatabaseInitializer .class )
341+ .hasBean ("batchDataSource" );
342+ DataSource batchDataSource = context .getBean ("batchDataSource" , DataSource .class );
343+ assertThat (context .getBean (SpringBootBatchConfiguration .class ).getDataSource ()).isEqualTo (batchDataSource );
344+ assertThat (context .getBean (BatchDataSourceScriptDatabaseInitializer .class ))
345+ .hasFieldOrPropertyWithValue ("dataSource" , batchDataSource );
346+ });
352347 }
353348
354349 @ Test
355350 void testBatchTransactionManager () {
356- this .contextRunner .withUserConfiguration (TestConfiguration .class , BatchTransactionManagerConfiguration .class )
357- .run ((context ) -> {
358- assertThat (context ).hasSingleBean (SpringBootBatchConfiguration .class );
359- PlatformTransactionManager batchTransactionManager = context .getBean ("batchTransactionManager" ,
360- PlatformTransactionManager .class );
361- assertThat (context .getBean (SpringBootBatchConfiguration .class ).getTransactionManager ())
362- .isEqualTo (batchTransactionManager );
363- });
351+ this .contextRunner .withUserConfiguration (BatchTransactionManagerConfiguration .class ).run ((context ) -> {
352+ assertThat (context ).hasSingleBean (SpringBootBatchConfiguration .class );
353+ PlatformTransactionManager batchTransactionManager = context .getBean ("batchTransactionManager" ,
354+ PlatformTransactionManager .class );
355+ assertThat (context .getBean (SpringBootBatchConfiguration .class ).getTransactionManager ())
356+ .isEqualTo (batchTransactionManager );
357+ });
364358 }
365359
366360 @ Test
367361 void jobRepositoryBeansDependOnBatchDataSourceInitializer () {
368- this .contextRunner .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class )
369- .run ((context ) -> {
370- ConfigurableListableBeanFactory beanFactory = context .getBeanFactory ();
371- String [] jobRepositoryNames = beanFactory .getBeanNamesForType (JobRepository .class );
372- assertThat (jobRepositoryNames ).isNotEmpty ();
373- for (String jobRepositoryName : jobRepositoryNames ) {
374- assertThat (beanFactory .getBeanDefinition (jobRepositoryName ).getDependsOn ())
375- .contains ("batchDataSourceInitializer" );
376- }
377- });
362+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class ).run ((context ) -> {
363+ ConfigurableListableBeanFactory beanFactory = context .getBeanFactory ();
364+ String [] jobRepositoryNames = beanFactory .getBeanNamesForType (JobRepository .class );
365+ assertThat (jobRepositoryNames ).isNotEmpty ();
366+ for (String jobRepositoryName : jobRepositoryNames ) {
367+ assertThat (beanFactory .getBeanDefinition (jobRepositoryName ).getDependsOn ())
368+ .contains ("batchDataSourceInitializer" );
369+ }
370+ });
378371 }
379372
380373 @ Test
381374 void jobRepositoryBeansDependOnFlyway () {
382- this .contextRunner .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class )
383- .withUserConfiguration (FlywayAutoConfiguration .class )
375+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class , FlywayAutoConfiguration .class )
384376 .withPropertyValues ("spring.batch.initialize-schema=never" )
385377 .run ((context ) -> {
386378 ConfigurableListableBeanFactory beanFactory = context .getBeanFactory ();
@@ -396,8 +388,8 @@ void jobRepositoryBeansDependOnFlyway() {
396388 @ Test
397389 @ WithResource (name = "db/changelog/db.changelog-master.yaml" , content = "databaseChangeLog:" )
398390 void jobRepositoryBeansDependOnLiquibase () {
399- this .contextRunner . withUserConfiguration ( TestConfiguration . class , EmbeddedDataSourceConfiguration . class )
400- .withUserConfiguration (LiquibaseAutoConfiguration .class )
391+ this .contextRunner
392+ .withUserConfiguration (EmbeddedDataSourceConfiguration . class , LiquibaseAutoConfiguration .class )
401393 .withPropertyValues ("spring.batch.initialize-schema=never" )
402394 .run ((context ) -> {
403395 ConfigurableListableBeanFactory beanFactory = context .getBeanFactory ();
@@ -411,8 +403,7 @@ void jobRepositoryBeansDependOnLiquibase() {
411403
412404 @ Test
413405 void whenTheUserDefinesTheirOwnBatchDatabaseInitializerThenTheAutoConfiguredInitializerBacksOff () {
414- this .contextRunner
415- .withUserConfiguration (TestConfiguration .class , CustomBatchDatabaseInitializerConfiguration .class )
406+ this .contextRunner .withUserConfiguration (CustomBatchDatabaseInitializerConfiguration .class )
416407 .withConfiguration (AutoConfigurations .of (DataSourceAutoConfiguration .class ,
417408 DataSourceTransactionManagerAutoConfiguration .class ))
418409 .run ((context ) -> assertThat (context ).hasSingleBean (BatchDataSourceScriptDatabaseInitializer .class )
@@ -422,7 +413,7 @@ void whenTheUserDefinesTheirOwnBatchDatabaseInitializerThenTheAutoConfiguredInit
422413
423414 @ Test
424415 void whenTheUserDefinesTheirOwnDatabaseInitializerThenTheAutoConfiguredBatchInitializerRemains () {
425- this .contextRunner .withUserConfiguration (TestConfiguration . class , CustomDatabaseInitializerConfiguration .class )
416+ this .contextRunner .withUserConfiguration (CustomDatabaseInitializerConfiguration .class )
426417 .withConfiguration (AutoConfigurations .of (DataSourceAutoConfiguration .class ,
427418 DataSourceTransactionManagerAutoConfiguration .class ))
428419 .run ((context ) -> assertThat (context ).hasSingleBean (BatchDataSourceScriptDatabaseInitializer .class )
@@ -431,8 +422,9 @@ void whenTheUserDefinesTheirOwnDatabaseInitializerThenTheAutoConfiguredBatchInit
431422
432423 @ Test
433424 void conversionServiceCustomizersAreCalled () {
434- this .contextRunner .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class )
435- .withUserConfiguration (ConversionServiceCustomizersConfiguration .class )
425+ this .contextRunner
426+ .withUserConfiguration (EmbeddedDataSourceConfiguration .class ,
427+ ConversionServiceCustomizersConfiguration .class )
436428 .run ((context ) -> {
437429 BatchConversionServiceCustomizer customizer = context .getBean ("batchConversionServiceCustomizer" ,
438430 BatchConversionServiceCustomizer .class );
@@ -481,8 +473,8 @@ void whenTheUserDefinesAJobNameThatDoesNotExistWithRegisteredJobFailsFast() {
481473
482474 @ Test
483475 void customExecutionContextSerializerIsUsed () {
484- this .contextRunner .withUserConfiguration (TestConfiguration . class , EmbeddedDataSourceConfiguration .class )
485- .withUserConfiguration ( CustomExecutionContextConfiguration .class )
476+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class )
477+ .withBean ( ExecutionContextSerializer .class , Jackson2ExecutionContextStringSerializer :: new )
486478 .run ((context ) -> {
487479 assertThat (context ).hasSingleBean (Jackson2ExecutionContextStringSerializer .class );
488480 assertThat (context .getBean (SpringBootBatchConfiguration .class ).getExecutionContextSerializer ())
@@ -492,12 +484,11 @@ void customExecutionContextSerializerIsUsed() {
492484
493485 @ Test
494486 void defaultExecutionContextSerializerIsUsed () {
495- this .contextRunner .withUserConfiguration (TestConfiguration .class , EmbeddedDataSourceConfiguration .class )
496- .run ((context ) -> {
497- assertThat (context ).doesNotHaveBean (ExecutionContextSerializer .class );
498- assertThat (context .getBean (SpringBootBatchConfiguration .class ).getExecutionContextSerializer ())
499- .isInstanceOf (DefaultExecutionContextSerializer .class );
500- });
487+ this .contextRunner .withUserConfiguration (EmbeddedDataSourceConfiguration .class ).run ((context ) -> {
488+ assertThat (context ).doesNotHaveBean (ExecutionContextSerializer .class );
489+ assertThat (context .getBean (SpringBootBatchConfiguration .class ).getExecutionContextSerializer ())
490+ .isInstanceOf (DefaultExecutionContextSerializer .class );
491+ });
501492 }
502493
503494 private JobLauncherApplicationRunner createInstance (String ... registeredJobNames ) {
@@ -560,7 +551,7 @@ static class EmptyConfiguration {
560551 }
561552
562553 @ TestAutoConfigurationPackage (City .class )
563- static class TestConfiguration {
554+ static class TestJpaConfiguration {
564555
565556 }
566557
@@ -838,14 +829,4 @@ BatchConversionServiceCustomizer anotherBatchConversionServiceCustomizer() {
838829
839830 }
840831
841- @ Configuration (proxyBeanMethods = false )
842- static class CustomExecutionContextConfiguration {
843-
844- @ Bean
845- ExecutionContextSerializer executionContextSerializer () {
846- return new Jackson2ExecutionContextStringSerializer ();
847- }
848-
849- }
850-
851832}
0 commit comments