【发布时间】:2014-10-19 18:33:41
【问题描述】:
在这个(伟大的)Mockery 快速参考的最后几段中,作者解释了一些模拟的行为修饰符,它们不是默认的,但可能有用。其中包括makePartial() 调用和shouldDeferMissing() 调用。
这些与默认行为有何不同?当您创建一个模拟 (Mockery::mock('myClass')) 并且不添加任何方法期望时,所有方法调用都会转到父级(即 MyClass),据我所知......
这是 Mockery 快速参考的最后一部分。
\Mockery::mock('MyClass')->makePartial()
还有
\Mockery::mock('MyClass')->shouldDeferMissing()
被称为被动部分模拟(不要与真正的部分混淆 稍后讨论的模拟对象),这种形式的模拟对象将推迟所有 不受模拟父类期望的方法, 即 MyClass。而之前的 shouldIgnoreMissing() 返回 null,此行为只是调用父级的匹配方法。
【问题讨论】: