Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Добавить возможность проверять списки с неизвестным заранее количеством элементов #86

Open
JustSkiv opened this issue Apr 22, 2021 · 3 comments
Labels
enhancement New feature or request

Comments

@JustSkiv
Copy link
Contributor

Сейчас Gonkey умеет проверять массивы только на точное соответствие, т.е. набор элементов строго фиксирован. Но некоторых случаях мы не можем точно знать это количество, либо оно очень большое.

Нужно подумать и добавить возможность проверять общий случай.

Пример ответа сервера:

{
        "status": "OK",
        "url": ["https://some-url-1.com", "https://some-url-2.com"]
}

Проблемы:

  1. Список может быть большим, и нет смысла описывать его целиком в кейсе.
    Решение: проверять элементы по общему паттерну (regexp) и/или проверять их количество

  2. Порядок элементов может быть не детерминирован. К примеру, в кейсе список описан так: ["value_1", "value_2"], и если от сервера придет ["value_2", "value_1"], тест сфэйлится.
    Решение: добавить возможность проверки наличия всех элементов, не зависимости от порядка.

Крмое того, могут оказаться полезными проверки included / not included, что бы проверять, что в списке есть или отсутствует конкретные элемент.

@fetinin fetinin added the enhancement New feature or request label Apr 26, 2021
@Alexey19
Copy link
Contributor

Вторая часть уже работает и так: добавьте в тест

  comparisonParams:
    ignoreArraysOrdering: true

@DmitriyGavrilov
Copy link

По первой части, также количество элементов может меняться и достаточно было бы проверить код ответа и тип возвращаемых данных. Еще может быть ситуация, когда достаточно не 200, а 403 или другого кода ответа без проверки body.

Решение:

  1. Иметь возможность проверить только код ответа;
  2. Иметь возможность проверить код ответа и тип данных.

@Alexey19
Copy link
Contributor

Alexey19 commented May 21, 2024

Это уже все поддерживается:
например вот так можно проверить код ответа и тип возвращаемых данных для json

  response:
    403: >
      {}
  responseHeaders:
    403:
      Content-Type: "application/json"

а вот то же самое для других типов (в данном случае для картинок)

  response:
    200: "$matchRegexp(.*)"
  responseHeaders:
    200:
      Content-Type: "image/x-icon"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants