首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测试扩展FormHelper的CakePHP 2.0.5帮助器

测试扩展FormHelper的CakePHP 2.0.5帮助器
EN

Stack Overflow用户
提问于 2012-02-08 05:33:18
回答 1查看 1K关注 0票数 1

我正在创建一个从FormHelper扩展的CakePHP帮助器:

代码语言:javascript
复制
App::uses('FormHelper', 'View/Helper');
class MyFormHelper extends FormHelper{
    public function wysiwyg($fieldName, $options = array()){
        return parent::textarea('Model.field');
    }
}

这是我的TestCase:

代码语言:javascript
复制
App::uses('Controller', 'Controller');
App::uses('View', 'View');
App::uses('MyFormHelper', 'View/Helper');

class MyFormHelperTest extends CakeTestCase {
    public $helper = null;

    public function setUp() {
        parent::setUp();
        $Controller = new Controller();
        $View = new View($Controller);
        $this->helper = new MyFormHelper($View);
    }


    public function testWysiwyg() {
        $result = $this->helper->wysiwyg('Model.field');
        $expected = array(
            'textarea' => array('name' => 'data[Model][field]', 'id' => 'ModelField'),
            '/textarea',
        );
        $this->assertTags($result, $expected);
    }
}

当我运行测试时,我有一个PHPUNIT_FRAMEWORK_ERROR_NOTICE

代码语言:javascript
复制
Trying to get property of non-object

我知道问题出在我的助手身上:

代码语言:javascript
复制
return parent::textarea('Model.field');

我不知道该怎么解决这个问题。

提前感谢:)

EN

回答 1

Stack Overflow用户

发布于 2012-10-26 19:58:05

要在Cake 2.0中重写HtmlHelper方法,您可以简单地:

创建包含例如link方法的OwnHelper类,该方法由extends HtmlHelperAppController中指定:

代码语言:javascript
复制
$helpers = array('Html' => array('className' => 'OwnHelper'));

通过ADmad

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9184302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档