У меня есть проект API laravel. Существует много данных безопасности, которые не должны отображаться для пользователей в ответах API. Мне нужен какой-то способ написать тесты, где я могу получить true
, если только структура ответа точно такая же, как предварительно заданная структура в тесте.
Итак, если моя тестовая структура $structure = [ 'data' => ['_id', 'user' => ['name', 'email], 'title'];
, но в ответ я получаю больше или меньше полей, мне нужно, чтобы этот тест провалился.
В документах я нашел только:
assertJson
- ожидание точного ключа => значения, но мне нужны только ключи; assertJsonStructure
- возвращает true, даже если некоторые поля отсутствуют или ответ содержит некоторые другие поля.
$this->assertEquals(..., ...)
, если вы хотите быть уверены, что некоторые значения не отображаются, вы можете использовать$this->assertArrayNotHasKey();
- person Mauro Baptista   schedule 03.10.2019