我想测试一下:
$object->method(true);
$object->method(false);
我想像那样测试它们:
$mock1 = $this->getMock ('ClassToBeTested', array('method'));
$mock1->expects ($this->at(1))->once()->method('method')->with($this->equalTo(false));
$mock1->expects ($this->at(2))->once()->method('method')->with($this->equalTo(true));
这当然不起作用。我需要一种"倍数"异常。
答案 0 :(得分:1)
我认为您需要的是使用withConsecutive
。
改编自PHPUnit文档的示例:
$mock = $this->getMock('ClassToBeTested', array('method'));
$mock->expects($this->exactly(2))
->method('method')
->withConsecutive(
array(true),
array(false)
);
$mock->method(true);
$mock->method(false);
请查看此处的withConsecutive
示例: