Я пытаюсь создать утверждение сценария, которое проверяет ключи из вложенной структуры JSON, возвращенной из запроса на отдых.
У меня проблема в том, что я не знаю, являются ли значения в ответе истинными или ложными.Поэтому проверка, которую я хочу сделать, это просто проверка структуры ответа.
Ожидаемый ответ:
{
"atd" : {
"es" : "",
"eu" : "",
"ns" : "",
"nu" : ""
},
"bh" : {
"es" : "",
"eu" : "",
"ns" : "",
"nu" : ""
},
"hw" : {
"es" : "",
"eu" : "",
"ns" : "",
"nu" : ""
},
"thr" : {
"es" : "",
"eu" : "",
"ns" : "",
"nu" : ""
}
}
Фактический ответ:
{
"atd" : {
"es" : false,
"eu" : false,
"ns" : false,
"nu" : false
},
"bh" : {
"es" : true,
"eu" : true,
"ns" : false,
"nu" : false
},
"hw" : {
"es" : false,
"eu" : false,
"ns" : false,
"nu" : false
},
"thr" : {
"es" : false,
"eu" : false,
"ns" : false,
"nu" : false
}
}
Текущее утверждение:
def expectedMap = [atd:[es:"",eu:"",ns:"",nu:""], bh:[es:"",eu:"",ns:"",nu:""],...]
def json = new groovy.json.JsonSlurper().parseText(context.response))
assert expectedMap.keySet().sort() == json.keySet().sort() as List, 'Actual response is not matching with expected data'
Приведенный выше код работает в определенной степени, в котором не утверждаются вложенные ключи.
Есть ли способ, которым я могу взять json из ответа и удалить значения true и false, а затем утверждать из этого?