gpt4 book ai didi

php - 如果事件已被分派(dispatch),如何在功能测试中进行测试

转载 作者:行者123 更新时间:2023-11-28 21:04:35 25 4
gpt4 key购买 nike

我正在使用 Symfony 中的功能测试来测试 Controller 操作。在这个测试中,我正在做这样的事情:

$client->request(
'PUT',
'/api/nodes/',
$data
);

然后我想测试某个事件是否已经被发送。我之前已经尝试启用探查器(并相应地设置配置)并检查 EventDataCollector 中的数据:

$client->enableProfiler();
$client->request(
'PUT',
'/api/nodes/' . $data[0]['id'] . '?webspace=sulu_io&language=en',
$data[0]
);

/** @var EventDataCollector $eventDataCollector */
$eventDataCollector = $client->getProfile()->getCollector('events');

这按预期工作,但问题是 $eventDataCollector 仅包含有关已实际执行某些监听器的事件的数据。幸运的是,在这种特定情况下执行了一个事件监听器,但我希望它也能在没有附加任何事件监听器的情况下工作,因为我不能肯定地说这种情况会继续这样。

所以我的问题是,是否有一种方法可以测试事件是否已分派(dispatch),即保存,即使没有附加事件监听器也是如此。

最佳答案

您只能在您的测试环境中注册一个事件监听器/订阅器。它的唯一目的是使您能够检查事件是否被触发。

关于php - 如果事件已被分派(dispatch),如何在功能测试中进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35172442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com