John Fletcher
09/25/2023, 7:33 PMLeoColman
09/25/2023, 8:11 PMJohn Fletcher
09/26/2023, 5:14 AMLeoColman
09/26/2023, 2:14 PMJohn Fletcher
09/27/2023, 5:55 AMpackage org.springframework.security.samples
import io.kotest.core.spec.style.StringSpec
import io.kotest.matchers.shouldBe
import org.assertj.core.api.Assertions
import org.junit.jupiter.api.extension.ExtendWith
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc
import org.springframework.boot.test.context.SpringBootTest
import org.springframework.security.test.context.support.WithMockUser
import org.springframework.test.context.junit.jupiter.SpringExtension
import org.springframework.test.web.servlet.MockMvc
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders
import org.springframework.test.web.servlet.result.MockMvcResultMatchers
@ExtendWith(SpringExtension::class)
@SpringBootTest
@AutoConfigureMockMvc
class KotestSecurity( mockMvc: MockMvc) : StringSpec({
@WithMockUser
"dont need login" {
val mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/user/index"))
.andExpect(MockMvcResultMatchers.status().isOk())
}
"need login" {
val mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/user/index"))
.andExpect(MockMvcResultMatchers.status().is3xxRedirection())
.andReturn()
}
})
LeoColman
09/27/2023, 1:36 PM@WithMockUser
should go on the class instead of the test functionJohn Fletcher
09/27/2023, 1:54 PMLeoColman
09/27/2023, 1:56 PMJohn Fletcher
09/27/2023, 2:37 PM