Last Updated: February 25, 2016
·
1.982K
· macodev

test php unit private and protected methods

This is a handy solution to test private or protected methods in phpunit.

public function invokeMethod(&$object, $methodName, array $parameters = array())
{
    $reflection = new \ReflectionClass(get_class($object));
    $method = $reflection->getMethod($methodName);
    $method->setAccessible(true);

    return $method->invokeArgs($object, $parameters);
}

To use:

$this->invokeMethod($user, 'cryptPassword', array('passwordToCrypt'));

(source http://j.mp/1fj7jxD )

Have a fresh tip? Share with Coderwall community!

Post
Post a tip
Did you know?

PHP applications still send a browser full of JavaScript. Hardening the server does not inventory the payment, analytics, and plugin scripts that run after the HTML is delivered.

Security insights from Cside