I am looking for the best way to go about testing the following static method (specifically using a Doctrine Model):
class Model_User extends Doctrine_Record
public static function create($userData)
$newUser = new self();
Sebastian Bergmann, the author of PHPUnit, recently had a blog post about Stubbing and Mocking Static Methods. With PHPUnit 3.5 and PHP 5.3 as well as consistent use of late static binding, you can do
$class::staticExpects($this->any()) ->method('helper') ->will($this->returnValue('bar'));
staticExpects is deprecated as of PHPUnit 3.8 and will be removed completely with later versions.