Вот простой отрывок из JSON, чтобы дать представление:
Код: Выделить всё
{
"level1": {
"level2": {
"items": [
{ "id": 1, "name": "item1" },
{ "id": 2, "name": "item2" },
{ "id": 3, "name": "item3" }
]
}
}
}
Я попробовал это решение, но проверка всех трех значений элементов вместо одного выглядит немного запутанной:
Код: Выделить всё
String actualJson = loadFile("nested_data.json");
assertJson(actualJson).at("/level1/level2/items")
.isArrayContainingExactlyInAnyOrder(conditions()
.satisfies(conditions()
.at("/id").isNumberEqualTo(1)
.at("/name").hasValue("item1")
)
.satisfies(conditions()
.at("/id").isNumberEqualTo(2)
.at("/name").hasValue("item2")
)
.satisfies(conditions()
.at("/id").isNumberEqualTo(3)
.at("/name").hasValue("item3")
)
);
}
Я также посмотрел jsonassert, но их документация еще менее понятна.
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/788 ... rt-in-java