2016-11-08 6 views
0
$observer = $this->getMockBuilder('Apps_Sample_DataHandler') 
      ->disableOriginalConstructor() 
      ->disableOriginalClone() 
      ->disableArgumentCloning() 
      ->getMock(); 

    $observer->method('getSampleData') 
     ->will($this->returnCallback('mockTestCall')); 


    $this->assertEquals('foo', $observer->getSampleData()); 

ここでは、 'getSampleData'メソッドを 'mockTestCall'でモックしようとしています。PHPユニットテスト:メソッドをモックしながら複数のパラメータを渡すにはどうしたらいいですか?

「mockTestCall」メソッドにパラメータを渡す方法を知りたかったのです。メソッド 'mockTestCall' の

定義は以下の通りである:

public function mockTestCall($arg1){ 
    return $arg1; 
} 

答えて

0

PHPについて> = 5.4:PHP 5.3

$observer->method('getSampleData') 
    ->will($this->returnCallback(
     function() { 
      $this->mockTestCall('arg1_value'); 
     } 
    )); 

$that = $this; 
$observer->method('getSampleData') 
    ->will($this->returnCallback(
     function() use($that) { 
      $that->mockTestCall('arg1_value'); 
     } 
    )); 
関連する問題