如何在cakePHP 2.6 Controller Test

时间:2016-02-01 16:34:08

标签: cakephp cakephp-2.0 cakephp-2.6

我有一个控制器功能,需要标题' X-Bla-Bla'来自我的JSON电话。我抓住了标题:

$this->request->header('X-Bla-Bla')

现在我想为此编写一个测试,但我无法发送标题。

我的测试看起来像这样:

    $_SERVER['HTTP_X_REQUESTED_WITH'] = 'XMLHttpRequest';

    $url = Router::url(array('api' => true, 'controller' => 'test', 'action' => 'index'));
    $options = array(
        'return' => 'contents',
    );
    $result = $this->testAction($url, $options);
    $this->assertNotEmpty($result);

如何发送标题?

如果没有,我怎么还能测试我的功能?

1 个答案:

答案 0 :(得分:2)

如果您在测试中以这种方式设置标题:

$_SERVER['HTTP_X_BLA_BLA'] = 'abc';

在致电testAction()之前,您的控制人员的行动将能够通过表达式阅读'abc'

$this->request->header('X-Bla-Bla')