Учитывая следующий ввод:
* def response = [{ a: 1 }, { a: 2 }]
* def item = { a: 1 }
Как проверить, что item
присутствует только один раз в response
?
Учитывая следующий ввод:
* def response = [{ a: 1 }, { a: 2 }]
* def item = { a: 1 }
Как проверить, что item
присутствует только один раз в response
?
Прямого способа сделать это нет, поскольку он встречается реже. Вы можете сделать это за 2 шага, отфильтровав список и затем используя contains only
.
* def response = [{ a: 1 }, { a: 2 }]
* def item = { a: 1 }
* match response contains item
* def fun = function(x){ return karate.match(x, item).pass }
* def filt = karate.filter(response, fun)
* match filt contains only item
match list contains '#(^msg)'
. Но также я хотел бы проверить, что есть только одно частичное совпадение из всего списка. Если я все еще недостаточно четко выразился, мы могли бы продолжить в чате.
- person dragi; 12.02.2019