public function AuthcacheP13nTestDefaultRequestHandler::testDefaultRequestHandlerWithResponseFilter in Authenticated User Page Caching (Authcache) 7.2
Test handler with response filter.
File
- modules/
authcache_p13n/ tests/ authcache_p13n.request-handler.test, line 157 - Define unit tests for request handler.
Class
- AuthcacheP13nTestDefaultRequestHandler
- Test cases for default request handler.
Code
public function testDefaultRequestHandlerWithResponseFilter() {
$filters = array(
'response' => array(
new AuthcacheP13nTestFilterStub($this->stubObserver),
new AuthcacheP13nTestFilterStub($this->stubObserver),
),
);
$context_providers = array();
$params = array(
'some' => 'args',
);
// Setup expectations.
$encode = $this->stubObserver
->method($this->contentEncoder, 'encode', 'encoded output')
->expect(AuthcacheP13nTestStubVerifyer::once());
$first_filter = $this->stubObserver
->method($filters['response'][0], 'filter', 'output after first filter')
->expect(AuthcacheP13nTestStubVerifyer::once())
->expect(AuthcacheP13nTestStubVerifyer::args(array(
'response',
'encoded output',
)));
$second_filter = $this->stubObserver
->method($filters['response'][1], 'filter', 'output after second filter')
->expect(AuthcacheP13nTestStubVerifyer::once())
->expect(AuthcacheP13nTestStubVerifyer::args(array(
'response',
'output after first filter',
)));
// Run handler.
$handler = new AuthcacheP13nDefaultRequestHandler($this->coreService, $this->requestValidator, $this->contentBuilder, $this->contentEncoder, $filters, $context_providers);
ob_start();
$handler
->handle($params);
$result = ob_get_clean();
$this
->assertEqual('output after second filter', $result);
// Verify stubs.
$this
->assert($encode
->verify($message), $message);
$this
->assert($first_filter
->verify($message), $message);
$this
->assert($second_filter
->verify($message), $message);
}