Удалить элементы из списка в каратэ?

#karate

Вопрос:

после использования функции scripAll() для получения списка значений атрибутов стиля мне нужно устранить некоторые из них. Хотел знать, есть ли в python что-то вроде remove (), которое можно использовать для того же самого.

Пример: * def list_colors = ["rgb(245,60,86)", "rgb(245,60,86)", "rgb(245,00,00)", "rgb(245,00,00)" ]

Хотите удалить rgb(245,00,00) из списка. Как я могу сделать это в карате?

Спасибо

Ответ №1:

Я думаю, что вы пропустили, что scriptAll() может занять третий аргумент «функция фильтра», пожалуйста, обратитесь к документам: https://github.com/intuit/karate/tree/master/karate-core#scriptall-with-filter

 * def list_colors = scriptAll('.my-css', "_.style['display']", x => !x.includes('245,00,00'))
 

В противном случае, пожалуйста, обратитесь к преобразованиям JSON: https://github.com/intuit/karate#json-transforms

 * def filtered = karate.map(list_colors, x => !x.includes('245,00,00'))