私はだから私はと呼ばれる私のテストにはPHPUnitのためのTwig_Environment
をモックとしたい。そして、モッキングTwig_Environment
$twigMock=$this->getMockBuilder(\Twig_Environment::class)
->disableOriginalConstructor()
->getMock()
->method('render')
->willReturn('');
私はクラスがあります。
class SampleClass
{
private $twig=null;
public function __construct(\Twig_Environment $twig)
{
$this->twig=$twig;
}
public function foo($param)
{
if(param)
{
$content=$this->twig->render('some_template./html.twig');
}
// DO other stuff
}
}
をしかし、私は私のテストクラスを呼び出すしようとすると、 :
01:$campleClassInstance=new SampleClass($twigMock);
私は次のエラーを取得します
TypeError: Argument 2 passed to \SampleClass::__construct() must be an instance of Twig_Environment, instance of PHPUnit_Framework_MockObject_Builder_InvocationMocker given,
これを解決する方法はありますか?