Tôi có một cấu trúc JSON mà tôi muốn khớp với một phần tử lồng nhau duy nhất trong, trong khi bỏ qua các dữ liệu khác. JSON trông như thế này (tối thiểu):Kết hợp một phần RSpec với một băm lồng nhau
{
"employee": {
"id": 1,
"jobs_count": 0
},
"messages": [ "something" ]
}
Đây là những gì tôi đang sử dụng ngay bây giờ:
response_json = JSON.parse(response.body)
expect(response_json).to include("employee")
expect(response_json["employee"]).to include("jobs_count" => 0)
Những gì tôi muốn làm là một cái gì đó như:
expect(response_json).to include("employee" => { "jobs_count" => 0 })
Thật không may, include
yêu cầu đối sánh chính xác cho bất kỳ điều gì nhưng kiểm tra khóa cấp cao nhất đơn giản (ít nhất với cú pháp đó).
Có cách nào để đối sánh một phần mã băm lồng nhau trong khi bỏ qua phần còn lại của cấu trúc không?