Spec-Zone.ru › CakePHP 4.3

Trait ConsoleIntegrationTestTrait

Набор методов, упрощающих тестирование команд и классов оболочки.

Позволяет вызывать команды/оболочки с полным контекстом приложения.

Пространство имен: Cake\TestSuite

Краткое описание свойств

  • $_appArgs protected
    array|null

    Настраиваемые аргументы конструктора приложения.

  • $_appClass protected
    string|null

    Настраиваемое имя класса приложения.

  • $_err protected
    Cake\TestSuite\Stub\ConsoleOutput

    Заглушка вывода ошибок консоли

  • $_exitCode protected
    int|null

    Последний код выхода

  • $_in protected
    Cake\Console\ConsoleInput

    Мок входных данных консоли

  • $_out protected
    Cake\TestSuite\Stub\ConsoleOutput

    Заглушка вывода консоли

  • $_useCommandRunner protected
    bool

    Использовать ли CommandRunner

Краткое описание методов

  • assertErrorContains() public

    Проверяет, что stderr содержит ожидаемый вывод

  • assertErrorEmpty() public

    Проверяет, что stderr пуст

  • assertErrorRegExp() public

    Проверяет, что stderr содержит ожидаемый регулярный выражение

  • assertExitCode() public

    Проверяет, что оболочка завершилась с ожидаемым кодом

  • assertExitError() public

    Проверяет, что оболочка завершилась с кодом Command::CODE_ERROR

  • assertExitSuccess() public

    Проверяет, что оболочка завершилась с кодом Command::CODE_SUCCESS

  • assertOutputContains() public

    Проверяет, что stdout содержит ожидаемый вывод

  • assertOutputContainsRow() protected

    Проверяет, что строка ячеек присутствует в выводе.

  • assertOutputEmpty() public

    Проверяет, что stdout пуст

  • assertOutputNotContains() public

    Проверяет, что stdout не содержит ожидаемый вывод

  • assertOutputRegExp() public

    Проверяет, что stdout содержит ожидаемый регулярный выражение

  • cleanupConsoleTrait() public

    Очищает состояние для подготовки к следующему тесту

  • cleanupContainer() public

    Очищает все определенные моки и очищает конфигурацию класса приложения.

  • commandStringToArgs() protected

    Создаёт массив $argv из строки команды

  • configApplication() public

    Настраивает класс приложения для использования в интеграционных тестах.

  • createApp() protected

    Создаёт экземпляр приложения.

  • exec() public

    Выполняет интеграционный тест CLI

  • makeRunner() protected

    Создаёт соответствующего диспетчера команд

  • mockService() public

    Добавляет смокированный сервис в контейнер.

  • modifyContainer() public

    Оборачивает контейнер приложения контейнером, содержащим моки.

  • removeMockService() public

    Удаляет смокированный сервис из контейнера.

  • useCommandRunner() public

    Устанавливает для этого тестового случая использование CommandRunner вместо устаревшего ShellDispatcher

END_OF_DOCUMENT_MARKER

Подробное описание методов

assertErrorContains() public

assertErrorContains(string $expected, string $message = ''): void

Утверждает, что stderr содержит ожидаемый вывод

Параметры

string $expected

Ожидаемый вывод

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertErrorEmpty() public

assertErrorEmpty(string $message = ''): void

Утверждает, что stderr пусто

Параметры

string $message необязательно

Сообщение, которое будет выведено при ошибке утверждения.

Возвращает

void

assertErrorRegExp() public

assertErrorRegExp(string $pattern, string $message = ''): void

Утверждает, что stderr содержит ожидаемый регулярный выражение

Параметры

string $pattern

Ожидаемый шаблон

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertExitCode() public

assertExitCode(int $expected, string $message = ''): void

Утверждает, что оболочка завершилась с ожидаемым кодом

Параметры

int $expected

Ожидаемый код выхода

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertExitError() public

assertExitError(string $message = ''): void

Утверждает, что оболочка завершилась с Command::CODE_ERROR

Параметры

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertExitSuccess() public

assertExitSuccess(string $message = ''): void

Утверждает, что оболочка завершилась с Command::CODE_SUCCESS

Параметры

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertOutputContains() public

assertOutputContains(string $expected, string $message = ''): void

Утверждает, что stdout содержит ожидаемый вывод

Параметры

string $expected

Ожидаемый вывод

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertOutputContainsRow() protected

assertOutputContainsRow(array $row, string $message = ''): void

Проверяет, что строка ячеек существует в выводе.

Параметры

array $row

Строка ячеек, существование которой нужно проверить в выводе.

string $message необязательно

Сообщение об ошибке.

Возвращает

void

assertOutputEmpty() public

assertOutputEmpty(string $message = ''): void

Утверждает, что stdout пусто

Параметры

string $message необязательно

Сообщение, которое будет выведено при ошибке утверждения.

Возвращает

void

assertOutputNotContains() public

assertOutputNotContains(string $expected, string $message = ''): void

Утверждает, что stdout не содержит ожидаемый вывод

Параметры

string $expected

Ожидаемый вывод

string $message необязательно

Сообщение об ошибке

Возвращает

void

assertOutputRegExp() public

assertOutputRegExp(string $pattern, string $message = ''): void

Утверждает, что stdout содержит ожидаемый регулярный выражение

Параметры

string $pattern

Ожидаемый шаблон

string $message необязательно

Сообщение об ошибке

Возвращает

void

cleanupConsoleTrait() public

cleanupConsoleTrait(): void

Очищает состояние, чтобы подготовиться к следующему тесту

Возвращает

void

cleanupContainer() public

cleanupContainer(): void

Очищает все созданные моки, а также очищает конфигурацию приложения.

Возвращает

void

commandStringToArgs() protected

commandStringToArgs(string $command): array<string>

Создаёт массив $argv из строки команды

Параметры

string $command

Строка команды

Возвращает

array<string>

configApplication() public

configApplication(string $class, array|null $constructorArgs): void

Настраивает класс приложения для использования в интеграционных тестах.

Параметры

string $class

Имя класса приложения.

array|null $constructorArgs

Аргументы конструктора для вашего класса приложения.

Возвращает

void

createApp() protected

createApp(): Cake\Core\HttpApplicationInterfaceCake\Core\ConsoleApplicationInterface

Создаёт экземпляр приложения.

Использует конфигурацию, установленную в configApplication().

Возвращает

Cake\Core\HttpApplicationInterfaceCake\Core\ConsoleApplicationInterface

exec() public

exec(string $command, array $input = []): void

Запускает интеграционный тест командной строки

Параметры

string $command

Команда для выполнения

array $input необязательно

Значения ввода для передачи в интерактивную оболочку

Возвращает

void

Выбрасывает

Cake\TestSuite\Stub\MissingConsoleInputException

RuntimeException

makeRunner() protected

makeRunner(): Cake\Console\CommandRunnerCake\TestSuite\LegacyCommandRunner

Создаёт соответствующий диспетчер команд

Возвращает

Cake\Console\CommandRunnerCake\TestSuite\LegacyCommandRunner

mockService() public

mockService(string $class, Closure $factory): $this

Добавляет смокированный сервис в контейнер.

При создании контейнера указанный класс будет сопоставлен с функцией фабрики. Функция фабрики будет использоваться для создания смокированных сервисов.

Параметры

string $class

Класс или интерфейс, который вы хотите определить.

Closure $factory

Функция фабрики для смокированных сервисов.

Возвращает

$this

modifyContainer() public

modifyContainer(Cake\Event\EventInterface $event, Cake\Core\ContainerInterface $container): Cake\Core\ContainerInterface|null

Оборачивает контейнер приложения контейнером, содержащим моки.

Если определены любые смокированные сервисы, контейнер приложения будет заменён контейнером, содержащим моки. Исходный контейнер будет установлен в качестве делегата для контейнера моков.

Параметры

Cake\Event\EventInterface $event

Событие

Cake\Core\ContainerInterface $container

Контейнер для обёртывания.

Возвращает

Cake\Core\ContainerInterface|null

removeMockService() public

removeMockService(string $class): $this

Удалить смокированный сервис в контейнере.

Параметры

string $class

Класс или интерфейс, который нужно удалить.

Возвращает

$this

useCommandRunner() public

useCommandRunner(): void

Установить этому тестовому случаю использование CommandRunner вместо устаревшего ShellDispatcher

Возвращает

void

Подробное описание свойств

$_appArgs protected

Настраиваемые аргументы конструктора приложения.

Тип

array|null

$_appClass protected

Настраиваемое имя класса приложения.

Тип

string|null

$_err protected

Заглушка для вывода ошибок в консоль

Тип

Cake\TestSuite\Stub\ConsoleOutput

$_exitCode protected

Последний код завершения

Тип

int|null

$_in protected

Мок для ввода в консоль

Тип

Cake\Console\ConsoleInput

$_out protected

Заглушка для вывода в консоль

Тип

Cake\TestSuite\Stub\ConsoleOutput

$_useCommandRunner protected

Использовать CommandRunner?

Тип

bool

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/trait-Cake.TestSuite.ConsoleIntegrationTestTrait.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API