【发布时间】:2013-02-24 07:17:26
【问题描述】:
我有下面的代码,我希望在运行时会失败,因为 DoesNothing 类不使用模拟类或在其上调用任何必需的方法。
<?php
class DoesNothing
{
}
class DoesNothingTest extends YourMockeryTestCase
{
/**
* @test
*/
public function somethingIsCalled()
{
$this->mock = Mockery::mock();
$keys = array(
'1234',
'abcxyz',
'*&(%&^$-*/~@:{}',
')*&GA^FAUIB(*',
'',
' ',
);
foreach ($keys as $key) {
$this->mock
->shouldReceive('remove')
->atLeast()->times(1)
->with($key);
}
$var = new DoesNothing($this->mock);
}
}
但是当我运行它时,它通过了。我希望它会说“未调用方法删除”等。
可能出了什么问题?与 Mockery 如何与 PHPUnit 对话有关?
谢谢, 马丁
编辑: 我还应该提到我们正在使用Etsy's PHPExtensions 将其集成到 PHPUnit 中
【问题讨论】:
标签: php unit-testing tdd phpunit mockery