Class MiddlewareDispatcher

Dispatches a request capturing the response for integration testing purposes into the Cake\Http stack.

Namespace: Cake\TestSuite

Properties summary

  • $_class protected
    string

    The application class name

  • $_constructorArgs protected
    array

    Constructor arguments for your application class.

  • $_test protected
    \Cake\TestSuite\IntegrationTestCase

    The test case being run.

  • $app protected
    \Cake\Core\HttpApplicationInterface|\Cake\Core\ConsoleApplicationInterface

    The application that is being dispatched.

Method Summary

Method Detail

__construct() public

__construct(mixed $test, mixed $class, mixed $constructorArgs, mixed $disableRouterReload)

Constructor

Parameters

\Cake\TestSuite\IntegrationTestCase $test

The test case to run.

string|null $class optional

The application class name. Defaults to App\Application.

array|null $constructorArgs optional

The constructor arguments for your application class. Defaults to ['./config']

bool $disableRouterReload optional

Disable Router::reload() call when resolving URLs. This flag may be necessary if you are using Router methods in your test case setup, and using array URLs when doing requests in your tests.

Throws

LogicException
If it cannot load class for use in integration testing.

_createRequest() protected

_createRequest(mixed $spec)

Create a PSR7 request from the request spec.

Parameters

array $spec

The request spec.

Returns

\Psr\Http\Message\ServerRequestInterface

execute() public

execute(mixed $requestSpec)

Run a request and get the response.

Parameters

array $requestSpec

The request spec to execute.

Returns

\Psr\Http\Message\ResponseInterface

The generated response.

resolveRoute() protected

resolveRoute(array $url)

Convert a URL array into a string URL via routing.

Parameters

array $url

The url to resolve

Returns

string

resolveUrl() public

resolveUrl(mixed $url)

Resolve the provided URL into a string.

Parameters

array|string $url

The URL array/string to resolve.

Returns

string

Property Detail

$_class protected

The application class name

Type

string

$_constructorArgs protected

Constructor arguments for your application class.

Type

array

$_test protected

The test case being run.

Type

\Cake\TestSuite\IntegrationTestCase

$app protected

The application that is being dispatched.

Type

\Cake\Core\HttpApplicationInterface|\Cake\Core\ConsoleApplicationInterface

© 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/3.9/class-Cake.TestSuite.MiddlewareDispatcher.html