diff options
| author | Paul-Christian Volkmer | 2024-01-19 13:10:36 +0100 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2024-01-19 13:10:36 +0100 |
| commit | f5df0b5d22a80e5d9ada3c46fba9c32742a33db6 (patch) | |
| tree | 27788579952103989792e1ae473aa8aeb4dc3f4e /src/integrationTest/kotlin/dev/dnpm | |
| parent | 972ac745e9b263e6c406f0447b5f5347fabfc751 (diff) | |
test: add tests to ensure TokenService is present if required
Diffstat (limited to 'src/integrationTest/kotlin/dev/dnpm')
| -rw-r--r-- | src/integrationTest/kotlin/dev/dnpm/etl/processor/config/AppConfigurationTest.kt | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/src/integrationTest/kotlin/dev/dnpm/etl/processor/config/AppConfigurationTest.kt b/src/integrationTest/kotlin/dev/dnpm/etl/processor/config/AppConfigurationTest.kt index d67b23a..b4e4b92 100644 --- a/src/integrationTest/kotlin/dev/dnpm/etl/processor/config/AppConfigurationTest.kt +++ b/src/integrationTest/kotlin/dev/dnpm/etl/processor/config/AppConfigurationTest.kt @@ -25,6 +25,8 @@ import dev.dnpm.etl.processor.output.KafkaMtbFileSender import dev.dnpm.etl.processor.output.RestMtbFileSender import dev.dnpm.etl.processor.pseudonym.AnonymizingGenerator import dev.dnpm.etl.processor.pseudonym.GpasPseudonymGenerator +import dev.dnpm.etl.processor.services.TokenRepository +import dev.dnpm.etl.processor.services.TokenService import org.assertj.core.api.Assertions.assertThat import org.junit.jupiter.api.Nested import org.junit.jupiter.api.Test @@ -33,12 +35,21 @@ import org.springframework.beans.factory.NoSuchBeanDefinitionException import org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration import org.springframework.boot.test.context.SpringBootTest import org.springframework.boot.test.mock.mockito.MockBean +import org.springframework.boot.test.mock.mockito.MockBeans import org.springframework.context.ApplicationContext +import org.springframework.security.crypto.password.PasswordEncoder +import org.springframework.security.provisioning.InMemoryUserDetailsManager import org.springframework.test.context.ContextConfiguration import org.springframework.test.context.TestPropertySource @SpringBootTest -@ContextConfiguration(classes = [AppConfiguration::class, KafkaAutoConfiguration::class, AppKafkaConfiguration::class, AppRestConfiguration::class]) +@ContextConfiguration(classes = [ + AppConfiguration::class, + AppSecurityConfiguration::class, + KafkaAutoConfiguration::class, + AppKafkaConfiguration::class, + AppRestConfiguration::class +]) @MockBean(ObjectMapper::class) @TestPropertySource( properties = [ @@ -190,6 +201,41 @@ class AppConfigurationTest { } + @Nested + @TestPropertySource( + properties = [ + "app.security.enable-tokens=true" + ] + ) + @MockBeans(value = [ + MockBean(InMemoryUserDetailsManager::class), + MockBean(PasswordEncoder::class), + MockBean(TokenRepository::class) + ]) + inner class AppConfigurationTokenEnabledTest(private val context: ApplicationContext) { + + @Test + fun checkTokenService() { + assertThat(context.getBean(TokenService::class.java)).isNotNull + } + + } + + @Nested + @MockBeans(value = [ + MockBean(InMemoryUserDetailsManager::class), + MockBean(PasswordEncoder::class), + MockBean(TokenRepository::class) + ]) + inner class AppConfigurationTokenDisabledTest(private val context: ApplicationContext) { + + @Test + fun checkTokenService() { + assertThrows<NoSuchBeanDefinitionException> { context.getBean(TokenService::class.java) } + } + + } + } }
\ No newline at end of file |
