У меня есть следующий тест rswag:
response '200', 'response with array of objects' do
schema type: :array,
items: {
type: :object,
properties: {
expected_id: { type: "integer", format: "int32" },
}
}
run_test!
end
Мой API отвечает JSON:
[
"invalid_key": 1,
"invalid_key": 2
]
Другими словами, недопустимый ответ в соответствии с приведенной выше схемой.
Однако тест не не пройден.Это неожиданно.
С другой стороны, если мой API отвечает массивом нулевых значений: "[null]"
Я получаю ожидаемый ответ:
Failure/Error: test.run
Rswag::Specs::UnexpectedResponse:
Expected response body to match schema: The property '#/0' of type null did not match the following type: object in schema 19e6c168-1da4-58a6-93fc-a33d9d91233a
Итак, мой тест проверяет наличие массива объектов, но не проверяет, что свойства во вложенных объектах соответствуют ожидаемым.Как мне сделать так, чтобы он также проверял свойства?