generated from pricelees/issue-pr-template
feat: RoomescapeApiTest 내 Delete 테스트 및 응답 객체를 읽어오는 확장함수 추가
This commit is contained in:
parent
0896e3bf30
commit
f569545361
@ -55,9 +55,7 @@ abstract class RoomescapeApiTest : BehaviorSpec() {
|
||||
header(HttpHeaders.COOKIE, "accessToken=token")
|
||||
}.apply {
|
||||
log.takeIf { it }?.let { this.andDo { print() } }
|
||||
}.andExpect {
|
||||
assert
|
||||
}
|
||||
}.andExpect(assert)
|
||||
|
||||
fun runPostTest(
|
||||
mockMvc: MockMvc,
|
||||
@ -77,6 +75,19 @@ abstract class RoomescapeApiTest : BehaviorSpec() {
|
||||
assert
|
||||
}
|
||||
|
||||
fun runDeleteTest(
|
||||
mockMvc: MockMvc,
|
||||
endpoint: String,
|
||||
log: Boolean = false,
|
||||
assert: MockMvcResultMatchersDsl.() -> Unit
|
||||
): ResultActionsDsl = mockMvc.delete(endpoint) {
|
||||
header(HttpHeaders.COOKIE, "accessToken=token")
|
||||
}.apply {
|
||||
log.takeIf { it }?.let { this.andDo { print() } }
|
||||
}.andExpect {
|
||||
assert
|
||||
}
|
||||
|
||||
fun loginAsAdmin() {
|
||||
every {
|
||||
jwtHandler.getMemberIdFromToken(any())
|
||||
@ -104,6 +115,13 @@ abstract class RoomescapeApiTest : BehaviorSpec() {
|
||||
every { memberRepository.findByIdOrNull(NOT_LOGGED_IN_USERID) } returns null
|
||||
}
|
||||
|
||||
fun <T> MvcResult.readValue(valueType: Class<T>): T = this.response.contentAsString
|
||||
.takeIf { it.isNotBlank() }
|
||||
?.let { readValue(it, valueType) }
|
||||
?: throw RuntimeException("""
|
||||
[Test] Exception occurred while reading response json: ${this.response.contentAsString} with value type: $valueType
|
||||
""".trimIndent())
|
||||
|
||||
fun <T> readValue(responseJson: String, valueType: Class<T>): T = objectMapper
|
||||
.readTree(responseJson)["data"]
|
||||
?.let { objectMapper.convertValue(it, valueType) }
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user