РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1214 of 1392 menu

Метод assertJsonMissing

Метод assertJsonMissing предназначен для тестирования JSON-ответов в Laravel. Он проверяет, что ответ не содержит указанные данные. Метод применяется к экземпляру TestResponse, который возвращается при выполнении запросов через get, post, put, delete и другие HTTP-методы. Первым параметром передаётся массив или строка с ключами и значениями, которые не должны присутствовать в JSON-ответе. Метод полезен для проверки, что определённые данные были удалены или не отображаются в ответе по условию.

Синтаксис

<?php $this->get($uri)->assertJsonMissing($data); ?>

Пример

Давайте проверим, что ответ не содержит пользователя с идентификатором 1:

<?php namespace Tests\Feature; use Tests\TestCase; class UserControllerTest extends TestCase { public function test_user_is_missing_from_response() { $res = $this->get('/api/users'); $res->assertJsonMissing(['id' => 1]); } } ?>

Результат выполнения кода:

true

Пример

Проверим, что в ответе отсутствует фрагмент с определёнными данными:

<?php namespace Tests\Feature; use Tests\TestCase; class ArticleControllerTest extends TestCase { public function test_article_is_not_in_response() { $res = $this->get('/api/articles'); $res->assertJsonMissing([ 'id' => 5, 'status' => 'draft' ]); } } ?>

Результат выполнения кода:

true

Пример

Метод также может проверять отсутствие строки в JSON-ответе:

<?php namespace Tests\Feature; use Tests\TestCase; class ProductControllerTest extends TestCase { public function test_product_name_is_missing() { $res = $this->get('/api/products'); $res->assertJsonMissing('abcde'); } } ?>

Результат выполнения кода:

true

Смотрите также

  • метод assertJson,
    который проверяет наличие данных в JSON-ответе
  • метод assertJsonFragment,
    который проверяет наличие фрагмента в JSON-ответе
  • метод assertJsonPath,
    который проверяет значение по пути в JSON-ответе
  • метод assertExactJson,
    который проверяет полное соответствие JSON-ответа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить