MockServer - Ссылочный файл схемы в "значении" (или некоторый другой ключ в ожидании JSON)
У меня есть определение ожидания в файле JSON:
[
{
"httpRequest": {
"path": "/example",
"method": "POST",
"headers": [
{ "name": "Content-Type", "value": "application/json" }
],
"body": {
"type": "JSON_SCHEMA",
"value": "schema/example.json"
}
},
"httpCallback": {
"callbackClass": "com.package.ExampleCallback"
},
"times": { "unlimited": true }
}
]
... и example.json
файл - с фактическим определением схемы.
Теперь я хотел бы иметь возможность ссылаться / читать файл определения схемы из ожидания (й) JSON, поскольку ручное копирование определения схемы JSON в файл (ы) ожидания имеет тенденцию быть / выглядеть нечитаемым).
Я делал это раньше в Java/Kotlin с JsonSchemaBody.jsonSchemaFromResource
, но не уверен, что это можно сделать в JSON:
@Component
class ExampleExpectation(val callback: ExampleCallback, val client: MockServerClient) : InitializingBean {
@Throws(Exception::class)
override fun afterPropertiesSet() { // ...or use @PostConstruct public void init() { }
val request = HttpRequest.request()
.withHeader(Header.CONTENT_TYPE, HeaderValue.APPLICATION_JSON)
.withMethod(Method.POST)
.withPath("/example")
.withBody(JsonSchemaBody.jsonSchemaFromResource("schema/example.json"))
client.`when`(request, Times.unlimited()).callback(callback)
}
}