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

assertFileDownloaded

Метод assertFileDownloaded класса Testable предназначен для проверки факта скачивания файла в тестах Livewire. Он вызывается на экземпляре тестируемого компонента и принимает ожидаемое имя скачиваемого файла в качестве аргумента.

Синтаксис

<?php Livewire::test(Component::class) ->call('methodName') ->assertFileDownloaded('filename.ext'); ?>

Пример

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

<?php namespace AppLivewire; use LivewireComponent; use SymfonyComponentHttpFoundationStreamedResponse; class FileDownloader extends Component { public function download() { return response()->streamDownload(function () { echo 'Hello, World!'; }, 'example.txt'); } public function render() { return view('livewire.file-downloader'); } } ?>
<div> <button wire:click="download"> Download </button> </div>

Теперь в тесте проверим, что при нажатии на кнопку скачивается файл с правильным именем:

<?php namespace TestsFeatureLivewire; use AppLivewireFileDownloader; use LivewireLivewire; use TestsTestCase; class FileDownloaderTest extends TestCase { public function test_file_download() { $res = Livewire::test(FileDownloader::class) ->call('download') ->assertFileDownloaded('example.txt'); } } ?>

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

"Test passed"

Пример

Проверим, что скачивается файл с другим именем. Тест провалится:

<?php namespace TestsFeatureLivewire; use AppLivewireFileDownloader; use LivewireLivewire; use TestsTestCase; class FileDownloaderTest extends TestCase { public function test_file_download_fail() { $res = Livewire::test(FileDownloader::class) ->call('download') ->assertFileDownloaded('wrong-name.txt'); } } ?>

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

"Failed asserting that a file was downloaded with name 'wrong-name.txt'"

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

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