[FINERACT-1667] Introducing Spring Batch as job runner engine
This commit is contained in:
committed by
Arnold Gálovics
parent
d03044c48b
commit
ff9181cc47
@@ -18,6 +18,7 @@
|
||||
*/
|
||||
package org.apache.fineract;
|
||||
|
||||
import static org.mockito.Mockito.RETURNS_MOCKS;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
@@ -29,6 +30,7 @@ import org.apache.fineract.infrastructure.core.service.migration.ExtendedSpringL
|
||||
import org.apache.fineract.infrastructure.core.service.migration.TenantDataSourceFactory;
|
||||
import org.apache.fineract.infrastructure.core.service.migration.TenantDatabaseStateVerifier;
|
||||
import org.apache.fineract.infrastructure.core.service.migration.TenantDatabaseUpgradeService;
|
||||
import org.apache.fineract.infrastructure.jobs.ScheduledJobRunnerConfig;
|
||||
import org.apache.fineract.infrastructure.jobs.service.JobRegisterService;
|
||||
import org.apache.fineract.infrastructure.security.service.TenantDetailsService;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
@@ -36,6 +38,8 @@ import org.mockito.Mockito;
|
||||
import org.mockito.junit.jupiter.MockitoExtension;
|
||||
import org.mockito.junit.jupiter.MockitoSettings;
|
||||
import org.mockito.quality.Strictness;
|
||||
import org.springframework.batch.core.configuration.annotation.JobBuilderFactory;
|
||||
import org.springframework.batch.core.configuration.annotation.StepBuilderFactory;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.gson.GsonAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
|
||||
@@ -48,6 +52,8 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.ComponentScan;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.FilterType;
|
||||
import org.springframework.context.annotation.Primary;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
@@ -64,7 +70,8 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
@EnableTransactionManagement
|
||||
@EnableWebSecurity
|
||||
@EnableConfigurationProperties({ FineractProperties.class, LiquibaseProperties.class })
|
||||
@ComponentScan(basePackages = "org.apache.fineract")
|
||||
@ComponentScan(basePackages = "org.apache.fineract", excludeFilters = {
|
||||
@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = ScheduledJobRunnerConfig.class) })
|
||||
@ExtendWith(MockitoExtension.class)
|
||||
@MockitoSettings(strictness = Strictness.LENIENT)
|
||||
public class TestConfiguration {
|
||||
@@ -80,6 +87,18 @@ public class TestConfiguration {
|
||||
};
|
||||
}
|
||||
|
||||
@Primary
|
||||
@Bean
|
||||
public JobBuilderFactory jobBuilderFactory() {
|
||||
return mock(JobBuilderFactory.class, RETURNS_MOCKS);
|
||||
}
|
||||
|
||||
@Primary
|
||||
@Bean
|
||||
public StepBuilderFactory stepBuilderFactory() {
|
||||
return mock(StepBuilderFactory.class, RETURNS_MOCKS);
|
||||
}
|
||||
|
||||
@Bean
|
||||
public HikariDataSource tenantDataSource() {
|
||||
return mock(HikariDataSource.class, Mockito.RETURNS_MOCKS);
|
||||
|
||||
Reference in New Issue
Block a user