0
我有一個事件監聽器模塊中設立(它檢查用戶權限)在onBootstrap方法:單元中拆離ZF2事件監聽測試
// attach permission listener to route event
$eventManager = $e->getApplication()->getEventManager();
$sm = $e->getApplication()->getServiceManager();
$permissionsListener = $sm->get('MyModule\Listener\Permissions');
$permissionsListener->attach($eventManager);
它的工作原理行中正常應用。
對於單元測試,如果我可以禁用此權限系統來輕鬆檢查所有頁面是否正常工作,而不用擔心設置假的管理員用戶,那將是一件好事。
但我不知道該怎麼做。
在我的測試,它擴展AbstractHttpControllerTestCase,我已經做了這樣的事情:
// detach permission listener to route event
$sm = Bootstrap::getServiceManager();
$eventManager = $this->getApplication()->getEventManager();
$permissionsListener = $sm->get('MyModule\Listener\Permissions');
$permissionsListener->detach($eventManager);
但這並不禁用許可制度。如何才能做到這一點?
您是否試過嘲笑權限監聽器?我們在我們的項目中有類似的設置。我們在單元測試中做的也是嘲笑聽衆 – PrinceG