有没有测试PHP SPL接口的开源SimpleTest测试用例

时间:2010-04-27 07:37:50

标签: php unit-testing interface iterator simpletest

我的系统中有很多实现PHP SPL Iterator接口的对象。

在我写作时,我也会写测试。

我知道编写测试通常不是一个简单的粘贴工作。

但是,当涉及到测试实现标准PHP库接口的类时,确实有一些可以借用并放入Test类的脚本片段是有意义的 - 纯粹是为了测试该特定接口。

将这些公开发布似乎是明智的。所以,我想知道你是否知道?

1 个答案:

答案 0 :(得分:0)

模拟迭代器的快速而肮脏的技巧只是用模拟对象存储ArrayIterator并将其用作模拟迭代器

$mockIt = new ArrayIterator;
$mockIt->append($mock1);
$mockIt->append($mock2);
$mockIt->append($mock3);

$sut = new SystemExpectingAnIterator($mockIt);
$this->assertTrue($sut->doSomethingWithIterator());

它有点臭,但比模拟所有SPL Iterator方法更直接。