Class MiddlewareDispatcher
Dispatches a request capturing the response for integration testing purposes into the Cake\Http stack.
Property Summary
-
$_class protected
stringThe application class name
-
$_constructorArgs protected
arrayConstructor arguments for your application class.
-
$_disableRouterReload protected
boolAllow router reloading to be disabled.
-
$_test protected
Cake\TestSuite\IntegrationTestCaseThe test case being run.
-
$app protected
Cake\Core\HttpApplicationInterfaceThe application that is being dispatched.
Method Summary
-
__construct() public
Constructor
-
_createRequest() protected
Create a PSR7 request from the request spec.
-
execute() public
Run a request and get the response.
-
resolveRoute() protected
Convert a URL array into a string URL via routing.
-
resolveUrl() public
Resolve the provided URL into a string.
Method Detail
__construct() ¶ public
__construct(Cake\TestSuite\IntegrationTestCase $test, string|null $class = null, array|null $constructorArgs = null, bool $disableRouterReload = false)
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.
Throws
LogicExceptionIf it cannot load class for use in integration testing.
_createRequest() ¶ protected
_createRequest(array $spec): Psr\Http\Message\RequestInterface
Create a PSR7 request from the request spec.
Parameters
-
array$spec The request spec.
Returns
Psr\Http\Message\RequestInterfaceexecute() ¶ public
execute(Cake\Http\ServerRequest $request): Psr\Http\Message\ResponseInterface
Run a request and get the response.
Parameters
-
Cake\Http\ServerRequest$request The request to execute.
Returns
Psr\Http\Message\ResponseInterfaceThe generated response.
resolveRoute() ¶ protected
resolveRoute(array $url): string
Convert a URL array into a string URL via routing.
Parameters
-
array$url The url to resolve
Returns
stringresolveUrl() ¶ public
resolveUrl(array|string $url): string
Resolve the provided URL into a string.
Parameters
-
array|string$url The URL array/string to resolve.
Returns
string