Modificar objetos en returnCallback () de PHPUnit Mocks

Quiero burlarme de un método de una clase y ejecutar una devolución de llamada que modifique el objeto dado como parámetro (usando PHP 5.3 con PHPUnit 3.5.5).

Digamos que tengo la siguiente clase:

class A
{
  function foobar($object) 
  {
    doSomething();
  }
}

Y este código de configuración:

$mock = $this->getMockBuilder('A')->getMock();
$mock->expects($this->any())->method('foobar')->will(
  $this->returnCallback(function($object) {
    $object->property = something;
  }));

Por alguna razón, el objeto no se modifica. Envar_dumpEn g$object Veo que es el objeto correcto. ¿Podría ser que el objeto se pasa por valor? ¿Cómo puedo configurar el simulacro para recibir una referencia?

Respuestas a la pregunta(3)

Su respuesta a la pregunta