Метод assertOk
Метод assertOk используется в тестах Laravel для проверки,
что HTTP-ответ имеет статус 200. Этот метод применяется
к экземпляру TestResponse, который возвращается
после выполнения запроса к приложению. Метод не принимает
никаких параметров и возвращает тот же экземпляр ответа
для дальнейшей цепочки проверок.
Синтаксис
<?php
$response = $this->get($url);
$response->assertOk();
?>
Пример
Давайте напишем тест для проверки главной страницы сайта:
<?php
namespace Tests\Feature;
use Tests\TestCase;
class PageTest extends TestCase
{
public function test_home_page_returns_ok()
{
$response = $this->get('/');
$response->assertOk();
}
}
?>
Пример
Давайте проверим, что страница публичных статей доступна:
<?php
namespace Tests\Feature;
use Tests\TestCase;
use App\Models\Article;
class ArticleTest extends TestCase
{
public function test_public_article_page_is_accessible()
{
$article = Article::factory()->create([
'status' => 'published'
]);
$response = $this->get('/articles/' . $article->id);
$response->assertOk();
}
}
?>
Пример
Давайте проверим, что API-эндпоинт возвращает успешный ответ:
<?php
namespace Tests\Feature;
use Tests\TestCase;
class ApiTest extends TestCase
{
public function test_api_users_returns_ok()
{
$response = $this->getJson('/api/users');
$response->assertOk()
->assertJsonStructure([
'*' => ['id', 'name', 'email']
]);
}
}
?>
Смотрите также
-
метод
assertStatus,
который проверяет произвольный HTTP-статус -
метод
assertCreated,
который проверяет статус 201 (Created) -
метод
assertNotFound,
который проверяет статус 404 (Not Found) -
метод
assertRedirect,
который проверяет статус редиректа