Trait IntegrationTestTrait
Трейт, предназначенный для упрощения интеграционных тестов ваших контроллеров.
Этот класс тестов предоставляет ряд вспомогательных методов и функций, которые упрощают отправку запросов и проверку их ответов. Он отдает предпочтение полным интеграционным тестам перед объектами-моками, поскольку позволяет проще тестировать больший объем вашего кода и избежать некоторых проблем с обслуживанием, которые создают объекты-моки.
Краткое описание свойств
- $_appArgs protected
array|nullНастраиваемые аргументы конструктора приложения.
- $_appClass protected
string|nullНастраиваемое имя класса приложения.
- $_controller protected
Cake\Controller\Controller|nullКонтроллер, используемый в последнем запросе.
- $_cookie protected
arrayДанные cookie для использования в следующем запросе.
- $_cookieEncryptionKey protected
string|null - $_csrfToken protected
boolФлажок Boolean, определяющий, должен ли запрос содержать токен CSRF.
- $_exception protected
Throwable|nullИсключение, которое будет возбуждено в случае.
- $_flashMessages protected
arrayСохраненные всплывающие сообщения перед отображением.
- $_layoutName protected
stringПоследний отрисованный макет.
- $_request protected
arrayДанные, используемые для создания следующего запроса.
- $_requestSession protected
Cake\Http\SessionЭкземпляр сессии из последнего запроса.
- $_response protected
Psr\Http\Message\ResponseInterface|nullОтвет на последний запрос.
- $_retainFlashMessages protected
boolФлажок Boolean, определяющий, нужно ли повторно сохранять всплывающие сообщения.
- $_securityToken protected
boolФлажок Boolean, определяющий, должен ли запрос содержать токен SecurityComponent.
- $_session protected
arrayДанные сессии для использования в следующем запросе.
- $_unlockedFields protected
string[]Список полей, исключенных из проверки полей.
- $_validCiphers protected
string[]Допустимые имена шифров для зашифрованных файлов cookie.
- $_viewName protected
stringПоследний отрисованный вид.
Краткое описание методов
-
_addTokens() protected
Добавить токены CSRF и компонента безопасности, если необходимо.
-
_buildRequest() protected
Создаёт объект запроса с настроенными опциями и параметрами.
-
_castToString() protected
Рекурсивно преобразует все данные в строку, так как именно таким образом данные передаются в POST запросе.
-
_checkCipher() protected
Вспомогательный метод для проверки имен шифров шифрования.
-
_decode() protected
Декодирует и расшифровывает одно значение.
-
_decrypt() protected
Расшифровывает $value с помощью метода public $type в классе Security.
-
_encrypt() protected
Шифрует $value с помощью метода public $type в классе Security.
-
_explode() protected
Метод explode для возврата массива из строки, установленной в CookieComponent::_implode(). Сохраняет обратную совместимость с методом CookieComponent::_implode() версии 1.x.
-
_getBodyAsString() protected
Получить тело ответа в виде строки.
-
_getCookieEncryptionKey() protected
Возвращает ключ шифрования, который будет использоваться.
-
_handleError() protected
Попытка отобразить ответ об ошибке для заданного исключения.
-
_implode() protected
Метод implode для сохранения ключей многомерных массивов.
-
_makeDispatcher() protected
Получить правильный экземпляр диспетчера.
-
_sendRequest() protected
Создаёт и отправляет запрос в экземпляр Dispatcher.
-
_url() protected
Создаёт корректный URL запроса и массив параметров, аналогично Request::_url().
-
assertContentType() public
Проверяет тип контента.
-
assertCookie() public
Проверяет значения куки.
-
assertCookieEncrypted() public
Проверяет значения куки, зашифрованные компонентом CookieComponent.
-
assertCookieNotSet() public
Проверяет, что куки не установлены в ответе.
-
assertFileResponse() public
Проверяет, что файл с указанным именем был отправлен в ответе.
-
assertFlashElement() public
Проверяет, что элемент всплывающего сообщения был установлен.
-
assertFlashElementAt() public
Проверяет, что элемент всплывающего сообщения был установлен на определённом индексе.
-
assertFlashMessage() public
Проверяет, что сообщение всплывающего сообщения было установлено.
-
assertFlashMessageAt() public
Проверяет, что сообщение всплывающего сообщения было установлено на определённом индексе.
-
assertHeader() public
Проверяет заголовки ответа.
-
assertHeaderContains() public
Проверяет, что заголовок ответа содержит строку.
-
assertHeaderNotContains() public
Проверяет, что заголовок ответа не содержит строку.
-
assertLayout() public
Проверяет, что поисковая строка находилась в имени макета.
-
assertNoRedirect() public
Проверяет, что заголовок Location не установлен.
-
assertRedirect() public
Проверяет, что заголовок Location корректен. Сравнение производится с полным URL.
-
assertRedirectContains() public
Проверяет, что заголовок Location содержит подстроку.
-
assertRedirectEquals() public
Проверяет, что заголовок Location корректен. Сравнение производится с точным указанным URL.
-
assertRedirectNotContains() public
Проверяет, что заголовок Location не содержит подстроку.
-
assertResponseCode() public
Проверяет определённый код состояния ответа.
-
assertResponseContains() public
Проверяет, что содержимое существует в теле ответа.
-
assertResponseEmpty() public
Проверить, что содержимое ответа пустое.
-
assertResponseEquals() public
Проверяет, что содержимое в теле ответа равно.
-
assertResponseError() public
Проверяет, что код состояния ответа находится в диапазоне 4xx.
-
assertResponseFailure() public
Проверяет, что код состояния ответа находится в диапазоне 5xx.
-
assertResponseNotContains() public
Проверяет, что содержимое не существует в теле ответа.
-
assertResponseNotEmpty() public
Проверьте, что содержимое ответа не пустое.
-
assertResponseNotEquals() public
Проверяет, что содержимое в теле ответа не равно.
-
assertResponseNotRegExp() public
Проверяет, что тело ответа не соответствует заданному регулярному выражению.
-
assertResponseOk() public
Проверяет, что код состояния ответа находится в диапазоне 2xx.
-
assertResponseRegExp() public
Проверяет, что тело ответа соответствует заданному регулярному выражению.
-
assertResponseSuccess() public
Проверяет, что код состояния ответа находится в диапазоне 2xx/3xx.
-
assertSession() public
Проверяет содержимое сессии.
-
assertSessionHasKey() public
Проверяет существование ключа сессии.
-
assertSessionNotHasKey() public
Проверяет отсутствие ключа сессии.
-
assertTemplate() public
Проверяет, что строка поиска была в имени шаблона.
-
cleanup() public
Очищает состояние, используемое для запросов.
-
cleanupContainer() public
Очищает все созданные подстановки и очищает конфигурацию приложения.
-
configApplication() public
Настроить класс приложения для использования в интеграционных тестах.
-
configRequest() public
Настраивает данные для следующего запроса.
-
controllerSpy() public
Добавляет дополнительные шпионы событий в менеджер событий контроллера/представления.
-
cookie() public
Устанавливает куки запроса для будущих запросов.
-
cookieEncrypted() public
Устанавливает зашифрованную куки запроса для будущих запросов.
-
createApp() protected
Создать экземпляр приложения.
-
delete() public
Выполняет запрос DELETE с использованием текущих данных запроса.
-
disableErrorHandlerMiddleware() public
Отключить обработчик ошибок middleware.
-
enableCsrfToken() public
Вызов этого метода добавит маркер CSRF к запросу.
-
enableRetainFlashMessages() public
Вызов этого метода позволит сохранить сообщения flash в сессии теста после удаления FlashHelper
-
enableSecurityToken() public
Вызов этого метода включит совместимый с SecurityComponent токен, который будет добавлен в данные запроса. Это позволяет легко тестировать действия, защищенные SecurityComponent.
-
extractExceptionMessage() protected
Извлечь подробное сообщение для существующего исключения
-
extractVerboseMessage() protected
Просмотреть контроллер, чтобы извлечь возможные причины неудачного утверждения
-
get() public
Выполняет запрос GET с использованием текущих данных запроса.
-
getSession() protected
-
head() public
Выполняет запрос HEAD с использованием текущих данных запроса.
-
mockService() public
Добавить имитируемую службу в контейнер.
-
modifyContainer() public
Обернуть контейнер приложения контейнером, содержащим подстановки.
-
options() public
Выполняет запрос OPTIONS с использованием текущих данных запроса.
-
patch() public
Выполняет запрос PATCH с использованием текущих данных запроса.
-
post() public
Выполняет запрос POST с использованием текущих данных запроса.
-
put() public
Выполняет запрос PUT с использованием текущих данных запроса.
-
removeMockService() public
Удалить имитируемую службу из контейнера.
-
session() public
Устанавливает данные сессии.
-
setUnlockedFields() public
Установить список полей, исключенных из валидации полей.
-
viewVariable() public
Извлекает переменную представления по имени.
Подробное описание методов
_addTokens() protected
_addTokens(string $url, array $data): array
Добавить токены CSRF и компонента безопасности, если необходимо.
Параметры
-
string$url URL, на котором отправляется форма.
-
array$data Данные тела запроса.
Возвращает
array_buildRequest() protected
_buildRequest(string $url, string $method, string|array $data = []): array
Создаёт объект запроса с настроенными параметрами.
Параметры
-
string$url URL.
-
string$method HTTP-метод.
-
string|array$data необязательно Данные запроса.
Возвращает
array_castToString() protected
_castToString(array $data): array
Рекурсивно преобразует все данные в строковый тип, так как данные должны отправляться в POST-запросе.
Параметры
-
array$data Данные POST-запроса.
Возвращает
array_checkCipher() protected
_checkCipher(string $encrypt): void
Вспомогательный метод для проверки имён шифров шифрования.
Параметры
-
string$encrypt Имя шифра.
Возвращает
voidИсключения
RuntimeExceptionПри предоставлении недопустимого шифра.
_decode() protected
_decode(string $value, string|false $encrypt, string|null $key): string|array
Декодирует и расшифровывает одно значение.
Параметры
-
string$value Значение для декодирования и расшифрования.
-
string|false$encrypt Шифр шифрования для использования.
-
string|null$key Используется в качестве ключа безопасности, если указано.
Возвращает
string|array_decrypt() protected
_decrypt(string[]|string $values, string|false $mode, string|null $key = null): string|array
Расшифровывает $value с помощью метода public $type в классе Security.
Параметры
-
string[]|string$values Значения для расшифрования.
-
string|false$mode Режим шифрования.
-
string|null$key необязательно Используется в качестве ключа безопасности, если указано.
Возвращает
string|array_encrypt() protected
_encrypt(string|array $value, string|false $encrypt, string|null $key = null): string
Шифрует $value с помощью метода public $type в классе Security.
Параметры
-
string|array$value Значение для шифрования.
-
string|false$encrypt Режим шифрования для использования. False отключает шифрование.
-
string|null$key необязательно Используется в качестве ключа безопасности, если указано.
Возвращает
string_explode() protected
_explode(string $string): string|array
Метод explode для возврата массива из строки, установленной в CookieComponent::_implode(). Сохраняет обратную совместимость с CookieComponent::_implode() версии 1.x.
Параметры
-
string$string Строка, содержащая данные, закодированные в формате JSON, или обычная строка.
Возвращает
string|array_getBodyAsString() protected
_getBodyAsString(): string
Получить тело ответа в виде строки.
Возвращает
string_getCookieEncryptionKey() protected
_getCookieEncryptionKey(): string
Возвращает ключ шифрования, который будет использоваться.
Возвращает
string_handleError() protected
_handleError(Throwable $exception): void
Попытка отобразить ответ об ошибке для заданного исключения.
Этот метод попытается использовать настроенный обработчик исключений. Если такой класс не существует, будет использован встроенный обработчик.
Параметры
-
Throwable$exception Исключение, которое нужно обработать.
Возвращает
void_implode() protected
_implode(array $array): string
Метод implode для сохранения ключей в многомерных массивах.
Параметры
-
array$array Мапа ключей и значений.
Возвращает
string_makeDispatcher() protected
_makeDispatcher(): Cake\TestSuite\MiddlewareDispatcher
Получение правильного экземпляра диспетчера.
Возвращает
Cake\TestSuite\MiddlewareDispatcher_sendRequest() protected
_sendRequest(string|array $url, string $method, string|array $data = []): void
Создаёт и отправляет запрос в экземпляр Dispatcher.
Получает и сохраняет ответ для последующего анализа.
Параметры
-
string|array$url URL.
-
string$method HTTP-метод.
-
string|array$data необязательно Данные запроса.
Возвращает
voidИсключения
PHPUnit\ExceptionThrowable_url() protected
_url(string $url): array
Создаёт правильный URL запроса и массив параметров, более похожий на Request::_url().
Параметры
-
string$url URL.
Возвращает
arrayassertContentType() public
assertContentType(string $type, string $message = ''): void
Проверка типа содержимого.
Параметры
-
string$type Тип содержимого, который нужно проверить.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertCookie() public
assertCookie(mixed $expected, string $name, string $message = ''): void
Проверка значений cookie.
Параметры
-
mixed$expected Ожидаемое содержимое.
-
string$name Имя cookie.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertCookieEncrypted() public
assertCookieEncrypted(mixed $expected, string $name, string $encrypt = 'aes', string|null $key = null, string $message = ''): void
Проверка значений cookie, зашифрованных компонентом CookieComponent.
Различие от assertCookie() в том, что это декодирует значение cookie, как и компонент CookieComponent, для этого утверждения.
Параметры
-
mixed$expected Ожидаемое содержимое.
-
string$name Имя cookie.
-
string$encrypt необязательно Режим шифрования.
-
string|null$key необязательно Используемый ключ шифрования. По умолчанию равен Security.salt.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidСм. также
assertCookieNotSet() public
assertCookieNotSet(string $cookie, string $message = ''): void
Проверяет, что куки не был установлен в ответе
Параметры
-
string$cookie Имя куки для проверки
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertFileResponse() public
assertFileResponse(string $expected, string $message = ''): void
Проверяет, что файл с заданным именем был отправлен в ответе
Параметры
-
string$expected Абсолютный путь к файлу, который должен быть отправлен в ответе.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertFlashElement() public
assertFlashElement(string $expected, string $key = 'flash', string $message = ''): void
Проверяет, что элемент flash был установлен
Параметры
-
string$expected Ожидаемое имя элемента
-
string$key необязательно Ключ flash
-
string$message необязательно Сообщение об ошибке проверки
Возвращает
voidassertFlashElementAt() public
assertFlashElementAt(int $at, string $expected, string $key = 'flash', string $message = ''): void
Проверяет, что элемент flash был установлен в определённый индекс
Параметры
-
int$at Индекс flash
-
string$expected Ожидаемое имя элемента
-
string$key необязательно Ключ flash
-
string$message необязательно Сообщение об ошибке проверки
Возвращает
voidassertFlashMessage() public
assertFlashMessage(string $expected, string $key = 'flash', string $message = ''): void
Проверяет, что сообщение flash было установлено
Параметры
-
string$expected Ожидаемое сообщение
-
string$key необязательно Ключ flash
-
string$message необязательно Сообщение об ошибке проверки
Возвращает
voidassertFlashMessageAt() public
assertFlashMessageAt(int $at, string $expected, string $key = 'flash', string $message = ''): void
Проверяет, что сообщение flash было установлено в определённый индекс
Параметры
-
int$at Индекс flash
-
string$expected Ожидаемое сообщение
-
string$key необязательно Ключ flash
-
string$message необязательно Сообщение об ошибке проверки
Возвращает
voidassertHeader() public
assertHeader(string $header, string $content, string $message = ''): void
Проверяет заголовки ответа
Параметры
-
string$header Заголовок для проверки
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertHeaderContains() public
assertHeaderContains(string $header, string $content, string $message = ''): void
Проверяет, что заголовок ответа содержит строку
Параметры
-
string$header Заголовок для проверки
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertHeaderNotContains() public
assertHeaderNotContains(string $header, string $content, string $message = ''): void
Проверяет, что заголовок ответа не содержит строку
Параметры
-
string$header Заголовок для проверки
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertLayout() public
assertLayout(string $content, string $message = ''): void
Проверяет, что поисковая строка была в имени макета.
Параметры
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertNoRedirect() public
assertNoRedirect(string $message = ''): void
Проверяет, что заголовок Location не установлен.
Параметры
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertRedirect() public
assertRedirect(string|array|null $url = null, string $message = ''): void
Проверяет, что заголовок Location корректен. Сравнение выполняется по полному URL.
Параметры
-
string|array|null$url необязательно Ожидаемый URL, куда должен перейти клиент. Это может быть строковый URL или массив, совместимый с Router::url(). Использование null позволяет просто проверить наличие этого заголовка.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertRedirectContains() public
assertRedirectContains(string $url, string $message = ''): void
Проверяет, что заголовок Location содержит подстроку
Параметры
-
string$url Ожидаемый URL, куда должен перейти клиент.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertRedirectEquals() public
assertRedirectEquals(string|array|null $url = null, string $message = ''): void
Проверяет, что заголовок Location корректен. Сравнение выполняется точно по предоставленному URL.
Параметры
-
string|array|null$url необязательно Ожидаемый URL, куда должен перейти клиент. Это может быть строковый URL или массив, совместимый с Router::url(). Использование null позволяет просто проверить наличие этого заголовка.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertRedirectNotContains() public
assertRedirectNotContains(string $url, string $message = ''): void
Проверяет, что заголовок Location не содержит подстроку
Параметры
-
string$url Ожидаемый URL, куда должен перейти клиент.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращает
voidassertResponseCode() public
assertResponseCode(int $code, string $message = ''): void
Утверждает определённый код состояния ответа.
Параметры
-
int$code Код состояния для проверки.
-
string$message необязательно Пользовательское сообщение об ошибке.
Возвращаемое значение
voidassertResponseContains() public
assertResponseContains(string $content, string $message = '', bool $ignoreCase = false): void
Утверждает, что содержимое присутствует в теле ответа.
Параметры
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
-
bool$ignoreCase необязательно Флаг для игнорирования регистра при проверке.
Возвращаемое значение
voidassertResponseEmpty() public
assertResponseEmpty(string $message = ''): void
Утверждает, что содержимое ответа пустое.
Параметры
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseEquals() public
assertResponseEquals(mixed $content, string $message = ''): void
Утверждает, что содержимое ответа совпадает.
Параметры
-
mixed$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseError() public
assertResponseError(string $message = ''): void
Утверждает, что код состояния ответа находится в диапазоне 4xx.
Параметры
-
string$message необязательно Пользовательское сообщение об ошибке.
Возвращаемое значение
voidassertResponseFailure() public
assertResponseFailure(string $message = ''): void
Утверждает, что код состояния ответа находится в диапазоне 5xx.
Параметры
-
string$message необязательно Пользовательское сообщение об ошибке.
Возвращаемое значение
voidassertResponseNotContains() public
assertResponseNotContains(string $content, string $message = '', bool $ignoreCase = false): void
Утверждает, что содержимого нет в теле ответа.
Параметры
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
-
bool$ignoreCase необязательно Флаг для игнорирования регистра при проверке.
Возвращаемое значение
voidassertResponseNotEmpty() public
assertResponseNotEmpty(string $message = ''): void
Утверждает, что содержимое ответа не пустое.
Параметры
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseNotEquals() public
assertResponseNotEquals(mixed $content, string $message = ''): void
Утверждает, что содержимое ответа не совпадает.
Параметры
-
mixed$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseNotRegExp() public
assertResponseNotRegExp(string $pattern, string $message = ''): void
Утверждает, что тело ответа не соответствует заданному регулярному выражению.
Параметры
-
string$pattern Шаблон для сравнения.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseOk() public
assertResponseOk(string $message = ''): void
Утверждает, что код состояния ответа находится в диапазоне 2xx.
Параметры
-
string$message необязательно Пользовательское сообщение об ошибке.
Возвращаемое значение
voidassertResponseRegExp() public
assertResponseRegExp(string $pattern, string $message = ''): void
Утверждает, что тело ответа соответствует заданному регулярному выражению.
Параметры
-
string$pattern Шаблон для сравнения.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertResponseSuccess() public
assertResponseSuccess(string $message = ''): void
Утверждает, что код состояния ответа находится в диапазоне 2xx/3xx.
Параметры
-
string$message необязательно Пользовательское сообщение об ошибке.
Возвращаемое значение
voidassertSession() public
assertSession(mixed $expected, string $path, string $message = ''): void
Утверждает содержимое сессии.
Параметры
-
mixed$expected Ожидаемое содержимое.
-
string$path Путь к данным сессии. Использует нотацию, совместимую с Hash::get().
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertSessionHasKey() public
assertSessionHasKey(string $path, string $message = ''): void
Утверждает существование ключа сессии.
Параметры
-
string$path Путь к данным сессии. Использует нотацию, совместимую с Hash::get().
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertSessionNotHasKey() public
assertSessionNotHasKey(string $path, string $message = ''): void
Утверждает отсутствие ключа сессии.
Параметры
-
string$path Путь к данным сессии. Использует нотацию, совместимую с Hash::get().
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidassertTemplate() public
assertTemplate(string $content, string $message = ''): void
Утверждает, что строка поиска была в имени шаблона.
Параметры
-
string$content Содержимое для проверки.
-
string$message необязательно Сообщение об ошибке, которое будет добавлено к сгенерированному сообщению.
Возвращаемое значение
voidcleanup() public
cleanup(): void
Очищает состояние, используемое для запросов.
Возвращает
voidcleanupContainer() public
cleanupContainer(): void
Очищает все заданные моки и очищает конфигурацию приложения.
Возвращает
voidconfigApplication() public
configApplication(string $class, array|null $constructorArgs): void
Настройка класса приложения для использования в интеграционных тестах.
Параметры
-
string$class Имя класса приложения.
-
array|null$constructorArgs Аргументы конструктора для вашего класса приложения.
Возвращает
voidconfigRequest() public
configRequest(array $data): void
Настраивает данные для следующего запроса.
Эти данные очищаются в методе tearDown().
Вы можете вызывать этот метод несколько раз, чтобы добавить в текущее состояние.
Параметры
-
array$data Данные запроса для использования.
Возвращает
voidcontrollerSpy() public
controllerSpy(Cake\Event\EventInterface $event, Cake\Controller\Controller|null $controller = null): void
Добавляет дополнительные шпионы событий в менеджер событий контроллера/представления.
Параметры
-
Cake\Event\EventInterface$event Событие диспетчера.
-
Cake\Controller\Controller|null$controller optional Экземпляр контроллера.
Возвращает
voidcookie() public
cookie(string $name, mixed $value): void
Устанавливает куки запроса для будущих запросов.
Этот метод позволяет настроить данные сессии, которые должны использоваться для последующих запросов. Состояние сессии сбрасывается в каждом tearDown().
Вы можете вызывать этот метод несколько раз, чтобы добавить в текущее состояние.
Параметры
-
string$name Имя куки для использования.
-
mixed$value Значение куки.
Возвращает
voidcookieEncrypted() public
cookieEncrypted(string $name, mixed $value, string|false $encrypt = 'aes', string|null $key = null): void
Устанавливает зашифрованную куки запроса для будущих запросов.
Разница с cookie() в том, что это шифрует значение куки, как и CookieComponent.
Параметры
-
string$name Имя куки для использования.
-
mixed$value Значение куки.
-
string|false$encrypt optional Режим шифрования для использования.
-
string|null$key optional Используемый ключ шифрования. По умолчанию Security.salt.
Возвращает
voidСм. также
createApp() protected
createApp(): Cake\Core\HttpApplicationInterfaceCake\Core\ConsoleApplicationInterface
Создает экземпляр приложения.
Использует конфигурацию, заданную в configApplication().
Возвращает
Cake\Core\HttpApplicationInterfaceCake\Core\ConsoleApplicationInterfacedelete() public
delete(string|array $url): void
Выполняет запрос DELETE с использованием текущих данных запроса.
Ответ на отправленный запрос будет сохранен как свойство. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
Возвращает
voiddisableErrorHandlerMiddleware() public
disableErrorHandlerMiddleware(): void
Отключить обработчик ошибок middleware.
Используя эту функцию, исключения больше не перехватываются ErrorHandlerMiddleware и вместо этого повторно выбрасываются TestExceptionRenderer. Это может быть полезно при диагностике/отладке непредвиденных сбоев в тестовых случаях.
Возвращает
voidenableCsrfToken() public
enableCsrfToken(): void
Вызов этого метода добавит токен CSRF в запрос.
И данные POST, и куки будут заполнены, когда этот параметр включен. Будут использованы стандартные имена параметров.
Возвращает
voidenableRetainFlashMessages() public
enableRetainFlashMessages(): void
Вызов этого метода повторно сохранит сообщения flash в тестовой сессии после удаления FlashHelper
Возвращает
voidenableSecurityToken() public
enableSecurityToken(): void
Вызов этого метода включит токен, совместимый с SecurityComponent, который будет добавлен в данные запроса. Это позволяет легко тестировать действия, защищенные SecurityComponent.
Возвращает
voidextractExceptionMessage() protected
extractExceptionMessage(Exception $exception): string
Извлечь подробное сообщение для существующего исключения
Параметры
-
Exception$exception Исключение для извлечения
Возвращает
stringextractVerboseMessage() protected
extractVerboseMessage(string $message): string
Просмотреть контроллер, чтобы извлечь возможные причины неудачи утверждения
Параметры
-
string$message Исходное сообщение, используемое в качестве основы
Возвращает
stringget() public
get(string|array $url): void
Выполняет запрос GET с использованием текущих данных запроса.
Ответ на отправленный запрос будет сохранен как свойство. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
Возвращает
voidgetSession() protected
getSession(): Cake\TestSuite\TestSession
Возвращает
Cake\TestSuite\TestSessionhead() public
head(string|array $url): void
Выполняет запрос HEAD с использованием текущих данных запроса.
Ответ на отправленный запрос будет сохранен как свойство. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
Возвращает
voidmockService() public
mockService(string $class, Closure $factory): $this
Добавляет смокированный сервис в контейнер.
При создании контейнера предоставленное имя класса будет сопоставлено с функцией-фабрикой. Функция-фабрика будет использоваться для создания смокированных сервисов.
Параметры
-
string$class Класс или интерфейс, который вы хотите определить.
-
Closure$factory Функция-фабрика для смокированных сервисов.
Возвращает
$thismodifyContainer() public
modifyContainer(Cake\Event\EventInterface $event, Cake\Core\ContainerInterface $container): nullCake\Core\ContainerInterface
Оборачивает контейнер приложения контейнером, содержащим моки.
Если заданы смокированные сервисы, контейнер приложения будет заменен контейнером, содержащим моки. Исходный контейнер будет установлен как делегат контейнера моков.
Параметры
-
Cake\Event\EventInterface$event Событие
-
Cake\Core\ContainerInterface$container Контейнер для обёртки.
Возвращает
nullCake\Core\ContainerInterfaceoptions() public
options(string|array $url): void
Выполняет запрос OPTIONS с использованием текущих данных запроса.
Ответ на обработанный запрос будет сохранён в качестве свойства. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
Возвращает
voidpatch() public
patch(string|array $url, string|array $data = []): void
Выполняет запрос PATCH с использованием текущих данных запроса.
Ответ на обработанный запрос будет сохранён в качестве свойства. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
-
string|array$data optional Данные для запроса.
Возвращает
voidpost() public
post(string|array $url, string|array $data = []): void
Выполняет запрос POST с использованием текущих данных запроса.
Ответ на обработанный запрос будет сохранён в качестве свойства. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
-
string|array$data optional Данные для запроса.
Возвращает
voidput() public
put(string|array $url, string|array $data = []): void
Выполняет запрос PUT с использованием текущих данных запроса.
Ответ на обработанный запрос будет сохранён в качестве свойства. Вы можете использовать различные методы проверки для проверки ответа.
Параметры
-
string|array$url URL для запроса.
-
string|array$data optional Данные для запроса.
Возвращает
voidremoveMockService() public
removeMockService(string $class): $this
Удаляет смоделированную службу в контейнер.
Параметры
-
string$class Класс или интерфейс, который нужно удалить.
Возвращает
$thissession() public
session(array $data): void
Устанавливает данные сессии.
Этот метод позволяет настроить данные сессии, которые будут использоваться для последующих запросов. Состояние сессии сбрасывается в каждом tearDown().
Вы можете вызывать этот метод несколько раз, чтобы добавить данные в текущее состояние.
Параметры
-
array$data Данные сессии для использования.
Возвращает
voidsetUnlockedFields() public
setUnlockedFields(string[] $unlockedFields = []): void
Устанавливает список полей, исключённых из проверки поля.
Параметры
-
string[]$unlockedFields optional Список полей, исключённых из проверки поля.
Возвращает
voidviewVariable() public
viewVariable(string $name): mixed
Получает переменную представления по имени.
Если переменной представления не существует, возвращается null.
Параметры
-
string$name Переменная представления, которую нужно получить.
Возвращает
mixedПодробное описание свойств
$_appArgs protected
Настроенные аргументы конструктора приложения.
Тип
array|null$_appClass protected
Имя настроенного класса приложения.
Тип
string|null$_controller protected
Контроллер, используемый в последнем запросе.
Тип
Cake\Controller\Controller|null$_cookie protected
Данные cookie для использования в следующем запросе.
Тип
array$_cookieEncryptionKey protected
Тип
string|null$_csrfToken protected
Флажок булевого типа, указывающий, необходимо ли добавлять токен CSRF в запрос.
Тип
bool$_exception protected
Исключение, которое выбрасывается в случае.
Тип
Throwable|null$_flashMessages protected
Сохранённые сообщения флэш-сообщения до рендеринга.
Тип
array$_layoutName protected
Последний рендер макета.
Тип
string$_request protected
Данные, используемые для создания следующего запроса.
Тип
array$_requestSession protected
Экземпляр сессии из последнего запроса.
Тип
Cake\Http\Session$_response protected
Ответ на последний запрос.
Тип
Psr\Http\Message\ResponseInterface|null$_retainFlashMessages protected
Флажок булевого типа, указывающий, следует ли повторно сохранять сообщения флэш.
Тип
bool$_securityToken protected
Флажок булевого типа, указывающий, следует ли добавлять токен SecurityComponent в запрос.
Тип
bool$_session protected
Данные сессии для использования в следующем запросе.
Тип
array$_unlockedFields protected
Список полей, исключённых из проверки поля.
Тип
string[]$_validCiphers protected
Допустимые имена шифров для зашифрованных cookie.
Тип
string[]$_viewName protected
Последнее рендер представление.
Тип
string
© 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.2/trait-Cake.TestSuite.IntegrationTestTrait.html