Shumilin Alexandr
01/11/2023, 2:48 PM@ActiveProfiles("test")
@ExtendWith(SpringExtension::class)
@SpringBootTest(classes = [ApiApplication::class], webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@AutoConfigureWireMock(port = 0)
@ContextConfiguration(initializers = [DBInitializer::class, KeyCloakInitializer::class])
abstract class BaseIntegrationTest {
@Autowired
lateinit var webClient: WebTestClient
@Autowired
lateinit var applicationContext: ApplicationContext
@BeforeEach
fun setUp() {
webClient = WebTestClient.bindToApplicationContext(applicationContext)
.apply(springSecurity())
.configureClient()
.build()
}
fun getTestJwt() = Jwt(
"token",
Instant.now(),
Instant.now().plusSeconds(100),
mapOf("testHeader" to "testHeader"),
mapOf("clientId" to "TestExternalSystemCode")
)
}
Code of TestMethod
val request = EmailVerificationStateRequestDto(cus = cusAX, email = testEmail)
val response = webClient
.mutateWith(
mockJwt()
.jwt(getTestJwt())
.authorities(SimpleGrantedAuthority("emailVerificationState"))
)
.post()
.uri("/emailVerificationState")
.contentType(MediaType.APPLICATION_JSON)
.body(Mono.just(request), EmailVerificationStateRequestDto::class.java)
.exchange()
.expectStatus().is2xxSuccessful
.returnResult(EmailVerificationStateResponseDto::class.java)
and i got error log:
https://kotlinlang.slack.com/files/T09229ZC6/F04K4PBAR24
please tell my why?
oh yes, method controller
@PreAuthorize("hasAuthority('emailVerificationState')")
@PostMapping("/emailVerificationState")
fun emailVerificationState(
@AuthenticationPrincipal currentUser: Jwt?,
@RequestBody @Validated emailVerificationStateRequestDto: EmailVerificationStateRequestDto
): Mono<EmailVerificationStateResponseDto> {
return verificationService.getEmailStatusVerification(emailVerificationStateRequestDto)
}
Sam
01/11/2023, 3:11 PMSam
01/11/2023, 3:11 PMShumilin Alexandr
01/11/2023, 3:12 PMSam
01/11/2023, 3:18 PMShumilin Alexandr
01/11/2023, 3:19 PMShumilin Alexandr
01/11/2023, 3:19 PMShumilin Alexandr
01/11/2023, 4:19 PMtestImplementation("io.projectreactor:reactor-core:3.5.0")
change to this
testImplementation("io.projectreactor:reactor-core:3.4.24")
and all ok!Shumilin Alexandr
01/11/2023, 4:19 PM