Bu çok özel bir soru ve ben bana doğru yönde işaret potansiyel bir çözüm ama hiçbir şey için çok googled var. Bana benim uygulamada bazı formları işleme yardımcı olmak için bir Zend_Controller_Action_Helper yazdım. Şimdi uygulamada gayet iyi çalışıyor ama benim testleri kırdı yolunmuş. Ben komisyoncu içine helper eklemek satırları ise her şey çalışıyor ama yenilgiler bu tür nesne. Ben almak hatadır
Fatal error: Class 'PHPUnit_Framework_Error_Notice' not found in /Users/chris/NetBeansProjects/myProject/library/ProcessForm.php on line 25
Ne ben anlamıyorum neden olduğunu spesifik olarak on line 25 bu hata atma edilir
public function processForm($aParam)
Bu yüzden sana app bazı göstermek için bazı kod yapıştırın etmeliyim. Ben bu yüzden gibi benim uygulama bootstrap bu Yardımcısı ekleme ..
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initHelpers()
{
// If I comment out these lines it all works
require_once 'ProcessForm.php';
Zend_Controller_Action_HelperBroker::addHelper(
new ProcessForm()
);
}
}
Benim PHPUnit önyükleme dosyası gibi görünüyor
require_once 'Zend/Application.php';
require_once 'Zend/Test/PHPUnit/ControllerTestCase.php';
abstract class ControllerTestCase extends Zend_Test_PHPUnit_ControllerTestCase
{
protected $application;
public function setUp()
{
$this->bootstrap = array($this, 'appBootstrap');
parent::setUp();
$this->getFrontController()->setParam('bootstrap', $this->application->getBootstrap());
}
public function appBootstrap()
{
$this->application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini');
$this->application->bootstrap();
}
}
Gerçek yardımcı bu gibi görünüyor
class ProcessForm extends Zend_Controller_Action_Helper_Abstract
{
/**
* @var Zend_Loader_PluginLoader
*/
public $pluginLoader;
/**
* Constructor: initialize plugin loader
*
* @return void
*/
public function __construct()
{
$this->pluginLoader = new Zend_Loader_PluginLoader();
}
public function processForm($aParam)
{
}
public function direct($aParam)
{
return $this->processForm($aParam);
}
}