generated from pricelees/issue-pr-template
[#44] 매장 기능 도입 #45
@ -1,5 +1,6 @@
|
||||
package roomescape.supports
|
||||
|
||||
import com.fasterxml.jackson.module.kotlin.convertValue
|
||||
import io.restassured.module.kotlin.extensions.Given
|
||||
import io.restassured.module.kotlin.extensions.Then
|
||||
import io.restassured.module.kotlin.extensions.When
|
||||
@ -9,6 +10,7 @@ import io.restassured.specification.RequestSpecification
|
||||
import org.hamcrest.CoreMatchers.equalTo
|
||||
import org.springframework.http.HttpMethod
|
||||
import org.springframework.http.MediaType
|
||||
import roomescape.common.config.JacksonConfig
|
||||
import roomescape.common.exception.ErrorCode
|
||||
|
||||
fun runTest(
|
||||
@ -96,3 +98,15 @@ fun ValidatableResponse.assertProperties(props: Set<String>, propsNameIfList: St
|
||||
else -> error("Unexpected data type: ${json::class}")
|
||||
}
|
||||
}
|
||||
|
||||
object ResponseParser {
|
||||
val objectMapper = JacksonConfig().objectMapper()
|
||||
|
||||
inline fun <reified T> parseListResponse(response: List<LinkedHashMap<String, Any>>): List<T> {
|
||||
return response.map { objectMapper.convertValue<T>(it) }
|
||||
}
|
||||
|
||||
inline fun <reified T> parseSingleResponse(response: LinkedHashMap<String, Any>): T {
|
||||
return objectMapper.convertValue<T>(response)
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user