phpunit测试方法,调用需要mock返回null的其他类方法

时间:2016-11-03 15:55:14

标签: php symfony

我是PHP新手,我正在进行单元测试。我有一个调用另一个服务方法的方法。我试图嘲笑它,但我总是得到:

  

在null

上调用成员函数validate()

这是我的控制器方法:

public function newAction(Request $request)
{
  $lm= $this->container->get('login_service');
  $val = $lm->validate($param1, $param2,$param3, $param4, $param5, $param6);
  $status = $val['status'];      
  if ($status == 'OK') {
  //do something here
  }
}

这是我的测试示例:

 $logManager = $this ->getMockBuilder('AppBundle\Controller\Login')
                        ->setMethods(array('validate'))
                        ->getMock();

 $logManager
            ->expects($this->once())
            ->method('validate')
            ->with('1', '12345', '1', '1', '2', 'value')
            ->will($this->returnValue(true));

0 个答案:

没有答案