(PECL uopz 5)
uopz_set_mock — Use mock instead of class for new objects
If mock
is a string containing the name of a class then it will be instantiated instead of
class
. mock
can also be an object.
class
The name of the class to be mocked.
mock
The mock to use in the form of a string containing the name of the class to use or an object.
If a string is passed, it has to be the fully qualified class name. It is
recommended to use the ::class
magic constant in this case.
Example #1 uopz_set_mock() example
<?php
class A {
public static function who() {
echo "A";
}
}
class mockA {
public static function who() {
echo "mockA";
}
}
uopz_set_mock(A::class, mockA::class);
A::who();
?>
以上例程会输出:
mockA
Example #2 uopz_set_mock() example
<?php
class A {
public static function who() {
echo "A";
}
}
uopz_set_mock(A::class, new class {
public static function who() {
echo "mockA";
}
});
A::who();
?>
以上例程会输出:
mockA