#api #automation #karate
Вопрос:
У меня есть коллекция [строка] uriPatterns для включения karateProtocol()
. Есть ли способ перебрать коллекцию и добавить MethodPause
(в данном случае Nil) без жесткого кодирования?
Ответ №1:
Если вы видите внутренний код PreDef.scala
— karateProtocol()
это просто помощник, который в терминах Scala — обертывает new KarateProtocol(Map[String, Seq])
.
Итак, просто создайте Scala Map
, в котором есть записи вида String -> Nil
и создайте a KarateProtocol
.
Комментарии:
1. Спасибо за совет, Питер. Решил это чем-то вроде этого:
val urlMap = scala.collection.mutable.Map[String,Seq[MethodPause]]() for(url <- feeder){ urlMap(url) = Nil } // sort the Map to ensure {id} is the last entry val sortedUrlMap = ListMap(urlMap.toSeq.sortWith(._1 < _._1):*) val protocol = new KarateProtocol(sortedUrlMap)