Каратэ: Подтвердить указанную дату c в ответе JSON - PullRequest
1 голос
/ 31 марта 2020

Мне нужно проверить ответ JSON (как показано ниже) и проверить, имеет ли ЛЮБОЙ из элементов в массиве JSON сегодняшнюю дату в виде createDate.

«createDate» фактически возвращается как метка времени, но у меня нет фактического значения. Единственное, что мне нужно проверить, это сегодняшняя дата. Заказ предметов также не гарантируется. Я посмотрел на javascript макросы, указанные в https://intuit.github.io/karate/, но у меня нет примера того, что я пытаюсь сделать. Пожалуйста, дайте мне знать любые предложения.

{
    "items": [
      {
        "id": "...",
        "name": "...",
        "createDate": "03-30-2020:10:12:30"

      },
      {
        "id": "...",
        "name": "...",
        "createDate": "03-31-2020:10:12:30"
      }
}

1 Ответ

0 голосов
/ 31 марта 2020

Здесь вы go, одно из возможных решений:

* def sdf = new java.text.SimpleDateFormat("MM-dd-yyyy")
* def today = sdf.format(new java.util.Date())
* def list = $response..createDate
* def fun = function(x){ return x.startsWith(today) }
* def filtered = karate.filter(list, fun)
* assert filtered.size() != 0

Дополнительные идеи см. В { ссылка }

...