Método simulado byRef de Google

Tengo una clase que toma un booleano como parámetro de referencia y devuelve un entero:

class Foo
{
  public:
    Bar my_bar;
    virtual int myMethod(bool &my_boolean) = 0;
}

/*...*/

int Foo::myMethod(bool &my_boolean){
  if (my_bar == NULL){
    my_boolean = false;
    return -1;
  }
  else{
    my_boolean = true;
    return 0;
  }

}

Y creé un simulacro para esta clase:

class MockFoo : public Foo
{
   MOCK_METHOD1(myMethod,int(bool &my_boolean));
}

Tengo problemas sobre cómo establecer las expectativas para este tipo de función, porque necesito establecer el valor de retornoy el parámetro de referencia a valores específicos para crear correctamente mis pruebas de unidad. ¿Cómo puedo manejar este tipo de función con gmock? Intenté seguir lo que pensé que era la solución en la documentación:

using ::testing::SetArgPointee;

class MockMutator : public Mutator {
  public:
  MOCK_METHOD2(Mutate, void(bool mutate, int* value));
  ...
};
  ...

MockMutator mutator;
EXPECT_CALL(mutator, Mutate(true, _))
  .WillOnce(SetArgPointee<1>(5));

Pero o bien no entendí el ejemplo o no era aplicable para este caso. ¿Alguien ha tratado este tipo de situación anteriormente?

Gracias por adelantado.