Ich habe eine JSON-Struktur, die ich ein einzelnes verschachteltes Element in übereinstimmen möchte, während andere Daten ignorieren. Die JSON sieht wie folgt aus (minimal):RSpec teilweise Übereinstimmung mit einem verschachtelten Hash
{
"employee": {
"id": 1,
"jobs_count": 0
},
"messages": [ "something" ]
}
Hier ist, was ich jetzt bin mit:
response_json = JSON.parse(response.body)
expect(response_json).to include("employee")
expect(response_json["employee"]).to include("jobs_count" => 0)
Was ich möchte, ist zu tun, so etwas wie:
expect(response_json).to include("employee" => { "jobs_count" => 0 })
Leider include
erfordert eine genaue Übereinstimmung für alles andere als eine einfache Schlüsselüberprüfung der obersten Ebene (zumindest mit dieser Syntax).
Gibt es eine Möglichkeit, einen verschachtelten Hash teilweise anzupassen, während der Rest der Struktur ignoriert wird?