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

Метод assertSessionMissing

Метод assertSessionMissing применяется к объекту ответа в тестах Laravel и проверяет, что переданное значение отсутствует в сессии. Первым параметром передаётся ключ, по которому проверяется отсутствие данных. Метод возвращает тот же объект ответа для цепочки вызовов.

Синтаксис

<?php $this->get($url)->assertSessionMissing($key); ?>

Пример

Давайте проверим, что после успешного выполнения запроса в сессии отсутствует ключ 'error':

<?php namespace Tests\Feature; use Tests\TestCase; use App\Models\User; class UserControllerTest extends TestCase { public function test_user_profile_has_no_error() { $user = User::factory()->create(); $res = $this->actingAs($user) ->get('/profile') ->assertSessionMissing('error'); $this->assertTrue($res->isOk()); } } ?>

Пример

Давайте проверим, что после отправки формы с корректными данными в сессии отсутствуют ошибки валидации:

<?php namespace Tests\Feature; use Tests\TestCase; class PostControllerTest extends TestCase { public function test_valid_post_has_no_errors() { $data = [ 'title' => 'Test Article', 'content' => 'This is test content' ]; $res = $this->post('/posts', $data) ->assertSessionMissing('errors'); $this->assertTrue($res->isRedirect()); } } ?>

Пример

Давайте проверим, что после удаления элемента из корзины в сессии отсутствует ключ 'cart':

<?php namespace Tests\Feature; use Tests\TestCase; use App\Models\Product; class CartControllerTest extends TestCase { public function test_cart_is_empty_after_clear() { $product = Product::factory()->create(); $this->post('/cart/add', ['product_id' => $product->id]); $this->post('/cart/clear') ->assertSessionMissing('cart'); } } ?>

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

  • метод assertSessionHas,
    который проверяет наличие данных в сессии
  • метод assertSessionHasErrors,
    который проверяет наличие ошибок в сессии
  • метод withSession,
    который устанавливает данные сессии для теста
  • метод assertStatus,
    который проверяет HTTP-статус ответа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить