Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
ResponseEvent example
$dispatcher
->
addListener
(
'frontend.home.page.request',
$listener
)
;
$subscriber
=
new
RouteEventSubscriber
(
$dispatcher
)
;
$subscriber
->
request
(
$event
)
;
}
public
function
testResponseEvent
(
)
: void
{
$request
=
new
Request
(
)
;
$request
->attributes->
set
(
'_route', 'frontend.home.page'
)
;
$event
=
new
ResponseEvent
(
$this
->
createMock
(
Kernel::
class
)
,
$request
, HttpKernelInterface::MAIN_REQUEST,
new
Response
(
)
)
;
$listener
=
$this
->
getMockBuilder
(
CallableClass::
class
)
->
getMock
(
)
;
$listener
->
expects
(
static
::
once
(
)
)
->
method
(
'__invoke'
)
;
$dispatcher
=
new
EventDispatcher
(
)
;
$dispatcher
->
addListener
(
'frontend.home.page.response',
$listener
)
;
$subscriber
=
new
RouteEventSubscriber
(
$dispatcher
)
;
$subscriber
->
response
(
$event
)
;
}
$customer
=
new
CustomerEntity
(
)
;
$salesChannelContext
=
$this
->
createMock
(
SalesChannelContext::
class
)
;
$salesChannelContext
->
method
(
'getCustomer'
)
->
willReturn
(
$customer
)
;
$request
=
new
Request
(
)
;
$request
->attributes->
set
(
PlatformRequest::ATTRIBUTE_SALES_CHANNEL_CONTEXT_OBJECT,
$salesChannelContext
)
;
$response
=
new
Response
(
)
;
$expectedHeaders
=
$response
->headers->
all
(
)
;
$event
=
new
ResponseEvent
(
$this
->
createMock
(
HttpKernelInterface::
class
)
,
$request
,
HttpKernelInterface::MAIN_REQUEST,
$response
)
;
$subscriber
->
setResponseCache
(
$event
)
;
static
::
assertSame
(
$expectedHeaders
,
$response
->headers->
all
(
)
)
;
}