函数:uopz_set_mock()
适用版本:PHP 7.0.0 及以上
用法: uopz_set_mock(string $class, mixed $mock)
说明: uopz_set_mock() 函数用于设置指定类的模拟对象。模拟对象是指一个类的替代对象,可以用于在测试环境中模拟原始类的行为。
参数:
- $class:要设置模拟对象的类名。
- $mock:模拟对象的实例,可以是一个对象或者类的名称。
示例:
class MyClass {
public function myMethod() {
return "Original method";
}
}
$mock = new class {
public function myMethod() {
return "Mocked method";
}
};
uopz_set_mock("MyClass", $mock);
$obj = new MyClass();
echo $obj->myMethod(); // Output: Mocked method
在上述示例中,我们定义了一个名为 MyClass
的类,并在其中定义了一个名为 myMethod()
的方法。然后,我们创建了一个匿名类作为模拟对象,并在其中定义了一个名为 myMethod()
的方法,返回字符串 "Mocked method"。
接下来,我们使用 uopz_set_mock()
函数将 MyClass
类的模拟对象设置为我们创建的模拟对象。然后,我们实例化 MyClass
类,并调用 myMethod()
方法。由于我们已经设置了模拟对象,输出将是 "Mocked method",而不是原始方法的返回值。
需要注意的是,使用 uopz_set_mock()
函数需要安装并启用 uopz 扩展。